Recent content by ShaunRemo

  1. ShaunRemo

    Town and Village scenes

    Firstly the amount of attention detail and atmosphere in these scenes is amazing and I cannot fault that. But I feel that town and village scenes are going to waste due to how spread out they are, when I need to walk 100m to enter the gates and another 250m to get to the lords hall I think most...
  2. ShaunRemo

    OSP Other Skyboxes Lighting Tutorial and Assets

    Additional info

    Reflective map water
    - The first step is either use the new postfx.txt or manually edit it from map_params 0 3 to map_params 0 0 this allows the shader to work.
    Then you need to edit materials.brf change the shader of map_ocean and map_river to water_shader save and enjoy!

    There is noticeable join of the water plains near the shore and the map foam doesn't move but these hopefully can be resolved later.
    Did you try this?
  3. ShaunRemo

    Official 3D art thread - Warband

    Hi all, drew a loading screen map for a mod I never finished!
    IS4JC6w.jpg

    Low effort meme version

    k2K7fiO.jpg
  4. ShaunRemo

    Modding Q&A [For Quick Questions and Answers]

    Thanks Ruthven I asked because my module.ini didn't have the far_plane_distance = 2000 orginally!
    Yep so for all scenes so far I have been moving the map mesh into the correct position via script then modifying the scenes terrain around the map, very tedious!
    Random maps defiantly have clipping issues, no way to modify scene terrain on the fly so currently the map mesh moves well below the map by default.
    However I'm going to have a play with  cast_ray ideal, have the map spawn well below the scene and fire rays down from below ground level down in a grid, the shortest ray would be the closest point the map can be to the terrain and shifts it up by that amount minus a little. 
     
    My script for the map mesh if interested.
    Code:
     ("ZZ_Map_Test",0,"map","0", 
       [
       (ti_on_scene_prop_init,
        [
         (store_trigger_param_1, ":scene_prop_id"),
         (prop_instance_get_variation_id, ":var_1", ":scene_prop_id"),
         (prop_instance_get_variation_id_2, ":var_2", ":scene_prop_id"),
         (eq,":var_1",0), # Object is live - lock map position by setting Var to 1
         (party_get_position,pos6,"p_main_party"),
         (eq,":var_1",0),  # Map is live check
    (try_begin),
         (party_is_in_any_town,"p_main_party"),	#In a town
         (party_get_position,pos6,"$current_town"), #town position
        (else_try),
         (ge,":var_2",1),				#Check if you want to choose a town (useful for multiplayer maps)
         (party_get_position,pos6,":var_2"),        #Moves map to chosen town
    (try_end),
         (store_div,":Map_X","$g_battle_map_width",2), #Prepare to center Map
         (assign,":Scale",50), #Choose scale of map
         (set_fixed_point_multiplier, ":Scale"), 
         (position_get_x,":X",pos6),
         (position_get_y,":Y",pos6),
         (position_get_z,":Z",pos6),
         (set_fixed_point_multiplier, 1),
         (val_add,":X",":Map_X"), #centers map
         (val_add,":Y",":Map_X"), #centers map
         (val_mul,":Z",-1),
         (val_sub,":Z",0),
         (position_set_x,pos6,":X"),
         (position_set_y,pos6,":Y"),
         (position_set_z,pos6,":Z"),
         (position_get_rotation_around_z,":rotation",pos6), #Sets map to face north
         (val_mul,":rotation",-1),
         (position_rotate_z,pos6,":rotation",0), # Rotates map correctly
         (prop_instance_set_position, ":scene_prop_id", pos6),
         (prop_instance_set_scale, ":scene_prop_id", ":Scale", ":Scale", ":Scale"),
    
      
        ]),
       ]),
  5. ShaunRemo

    Modding Q&A [For Quick Questions and Answers]

    Ok so a long time ago with the help of LaGrandmaster I got a decent infinite shader for better scene borders but it had it's issues.
    But I found this post in a mod that implemented my borders to find you simply can extend the clipping plane???
    Waka The Fox said:
    Jacobhinds said:
    To make the distant mountains work, I had to increase the "far clipping plane" which is basically the draw distance. In some engines this decreases the accuracy of the "depth buffer" which is a per-frame snapshot of the distance each pixel is from the camera. The water uses this to appear transparent, and to fade from deep water to shallow water, but with the depth buffer stretched between 0 and the new "far clipping plane", the water begins fading at much shallower depths than before.

    Go to module.ini and lower the far_plane_distance value. This may make some of the mountains clip with the draw distance.

    Okay, I'll try things out to see if I can hit a nice compromise, then I will get back to you.

    EDIT: 45000 seems like a good value

    IRHjzm6.jpg

    4NV6ZM0.jpg

    Bit hesitant to go lower


    So my question is what other hidden options are there you can add to module.ini?

    Some pictures of it in action.
    The borders have been removed and a world map mesh that adjusts itself to display the correct location!

    FxdYeeO.jpg

    BR30eBU.jpg

    fSULh0b.jpg

    JlcrPKJ.jpg

    ozE4BJ1.jpg

    HAUZizg.jpg


    The clipping plane extension does effect particle and water rendering if depth effects are on!

    ypnCsTR.jpg
  6. ShaunRemo

    LSP 3D Art Wooden Scene Props Pack 1.2

    Legit amazing Adorno will be nabbing these for myself definitely!
  7. ShaunRemo

    Help with specular on exterior scene props

    Hey Adorno
    you have probably tried these shaders?

    standart_shader_bump_nospec_high_noterraincolor_Instanced
    standart_shader_bump_nospec_high_noterraincolor

    They say noterraincolor so I assume they dismiss ground ambient colour
  8. ShaunRemo

    Modding Q&A [For Quick Questions and Answers]

    n9ImTYY.jpg


    So I previously posted this code
    So I got an item to randomly change colour on spawn fairly easy with this.
    Code:
    [(ti_on_init_item,
    		[(store_random_in_range,reg1,0,7),
    		(cur_item_set_material,"@shirt_a_{reg1}SR", 0,)],
    This is the material setup, just change the material names to match the item and it's an easy way to add variety.
    shirt_a_0SR, = Neutral
    shirt_a_1SR, = light
    shirt_a_2SR, = dark
    shirt_a_3SR, = red
    shirt_a_4SR, = yellow
    shirt_a_5SR, = green
    shirt_a_6SR, = blue

    Now I've given the troop a number, the number is currently their plural name (which I think is redundant code)

    Code:
    ["swadian_recruit","Swadian Recruits","3"

    The item is given this code

    Code:
    [(ti_on_init_item, 
                    [(store_trigger_param_2, ":troop_no"),
                     (str_store_troop_name_plural,s1,":troop_no"),
                     (cur_item_set_material,"@shirt_a_{s1}SR", 0,)])]],

    Now the linen tunic can be worn by anyone but will change colour depending on the troop!
    So Swadians wear red tunic Rhodoks wear green, Nords wear blue etc..

    The next step is instead of one number you can give the troop a serial such as "3333326"
    the serial chooses one of the numbers randomly (in this case 3's are more likely and 2 and 6 are rare)
    this way a troop can be given multiple colours for civilians or bandits

    However firstly the "number" is in a string and I wanted to know how to convert it to a register,
    secondly the serial needs to choose just one number and I wondered if there is a clean way to do this?
    current code for serial breakdown, reg1 is my  six digit serial
    Code:
    	(store_random_in_range,":picker",0,7),		   #chooses a colour
    		(val_rshift,reg1, ":picker"),			   #shifts to that choice
    		(assign,":reg_shift",reg1,),			   #copies the choice
    		(val_rshift, ":reg_shift", 1),			   #removes the chosen number
    		(val_lshift, ":reg_shift", 1),			   #replaces the chosen number with 0
    		(val_sub,reg1,":reg_shift"),			   #finds the difference producing chosen number
    		(cur_item_set_material,"@shir_a_{reg1}SR", 0,)
  9. ShaunRemo

    Modding Q&A [For Quick Questions and Answers]

    Yep so that works but if I give a troop two of the same item twice with different modifiers

    Code:
    (itm_linen_tunic,imod_blue),(itm_linen_tunic,imod_red),

    The idea being the agents would be wearing one or the other but the check simply gets the first modifier in the inventory and they appear the same colour so for unique troops it works fine.
  10. ShaunRemo

    Modding Q&A [For Quick Questions and Answers]

    Thank you kalarhan

    My troop modifier assignment looks like this, borrowed VC proccess module troops to get that working.

    Code:
    imod_neutral = imod_champion
    imod_light   = imod_fresh
    imod_dark    = imod_day_old
    imod_red     = imod_two_day_old
    imod_yellow  = imod_smelling
    imod_green   = imod_rotten
    imod_blue    = imod_large_bag
    (itm_linen_tunic,imod_blue),(itm_linen_tunic,imod_red),(itm_linen_tunic,imod_green),(itm_linen_tunic,imod_yellow),

    The agent spawning will be given an instance of that item with a modifier, blue, red, green, or yellow.
    the item instance gets checked when it's spawned, and I seemingly can't check the spawned item.

    Code:
    (troop_get_inventory_slot_modifier, <destination>, <troop_id>, <inventory_slot_no>),

    This gets the troops modifier which is already set,

    Code:
    (item_has_modifier, <item_kind_no>, <item_modifier_no>),

    This checks the item kinds modifier not the spawned item

    Code:
    (show_item_details_with_modifier, <item_id>, <item_modifier>, <position_no>, <price_multiplier>),

    I'm looking into this code to see if I can get the modifier!

  11. ShaunRemo

    Modding Q&A [For Quick Questions and Answers]

    n9ImTYY.jpg


    So I got an item to randomly change colour on spawn fairly easy with this.
    Code:
    [(ti_on_init_item,
    		[(store_random_in_range,reg1,0,7),
    		(cur_item_set_material,"@shirt_a_{reg1}SR", 0,)],
    This is the material setup, just change the material names to match the item and it's an easy way to add variety.
    shirt_a_0SR, = Neutral
    shirt_a_1SR, = light
    shirt_a_2SR, = dark
    shirt_a_3SR, = red
    shirt_a_4SR, = yellow
    shirt_a_5SR, = green
    shirt_a_6SR, = blue

    So I know how to give a specific modifier in troops

    IG8Kp0b.jpg


    So if the item has the modifier imod_large_bag it chooses material 7 which is blue.

    I just don't know how to check what modifier is active on the item.

    And if I could make modifiers that don't do anything except get checked therefore apply the material.
  12. ShaunRemo

    Modding Q&A [For Quick Questions and Answers]

    Thank you Somebody wasn't aware inventories started at 10 so I don't need to try to find horses if they start at 10, players can sell items to the merchant making gaps but I'm not overly worried about that yet, next step is to make it so you can't ride them.
    QhdfVA5l.jpg
  13. ShaunRemo

    Modding Q&A [For Quick Questions and Answers]

    I'm getting horses to spawn in the right position, but just not the right horse for the slot I want.
  14. ShaunRemo

    Modding Q&A [For Quick Questions and Answers]

    Hello, I'm jumping back into modding and wanted some help because I can't get my dumb script to show a horse merchants stock visually.

    Code:
    ("AA_Spawn_Horse",sokf_invisible,"Horse_Ref","0", [
     (ti_on_scene_prop_init,
        [
        (store_trigger_param_1, ":scene_prop_id"),							#Gets scene prop
              (prop_instance_get_variation_id, ":horse", ":scene_prop_id"),				#What slot horse you want 1st 2nd etc
              (assign,":slot",0), 									#Start at slot 0
    (try_for_range,":slot",0,30),									#Searches up to slot 30
               (party_get_slot,":horse_merchant","$current_town",slot_town_horse_merchant),		#Finds Merchant
               (troop_get_inventory_slot, ":item_horse", ":horse_merchant",":slot"),		#Checks different slot per loop
    	   (is_between,":item_horse",horses_begin,horses_end),					#Checks if item is horse, passes if true
    	   (val_add,":slot",":horse"),								#Gets current slot which is the first horse and adds to it
               (troop_get_inventory_slot, ":horse", ":horse_merchant",":slot"),			#Gets that slot so 1st or 2nd etc
    	   (spawn_horse,":horse", 0),								#Spawns horse
    	   (assign,":slot",50),									#Stops loop
    	   (eq,":slot",0),
    (try_end),
        ])
       ]),
    So the script is meant to find the first horse in the Merchants inventory, you can set the Var no: to choose the horses on or after that point.
    Not sure where I'm going wrong so far.
  15. ShaunRemo

    Agent Spawning OSP WIP

    HarryPham123 said:
    hi there my friend i had tried your code but ERM it warned me this
    WARNING: Local variable never used: Var_y_N, at: 0
    WARNING: Local variable never used: Var_z_N, at: 0
    WARNING: Local variable never used: Var_z, at: 0

    how can i fix it i have tried many many times

    These are extra inputs that have been setup but not used yet, if you want that warning gone you can delete anything referencing those Local Variables from the code without error.
Top Bottom