Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - PaperSalad

Pages: 1 2
1
Released Modifications / Re: Zombies! - Server side scripts
« on: May 30, 2015, 10:34:17 pm »
Here are some of the maps I made for that server. They're not the greatests, but they're something.

Mini town with manor
Spoiler
scn_mp_custom_map_10 mp_custom_map_10 256 none none 0.000000 0.000000 100.000000 100.000000 -100.000000 0x000000013000000000022c650000e46600003e790000c8c9
  0
  0
 outer_terrain_plain
[close]

Quarry town
Spoiler
scn_mp_fort_brochet mp_fort_brochet 256 none none 0.000000 0.000000 100.000000 100.000000 -100.000000 0x000000023002a1ba0004210900003ca000006a8900007a7b
  0
  0
 outer_terrain_plain

[close]

Farm with tunnels
Spoiler
scn_mp_fort_lyon mp_fort_lyon 256 none none 0.000000 0.000000 100.000000 100.000000 -100.000000  0x000000003000000000031ccc000091e900004426000070b2
  0
  0
 outer_terrain_plain




Making of (glimpse of the tunnels)

As you can tell from the screens, this last one can have a pretty strong impact on people's frames. If you want to use it, you might have to edit it a bit to improve the performance.

Have fun!

[close]

2
Released Modifications / Re: Zombies! - Server side scripts
« on: May 28, 2015, 01:06:02 am »
Thank you all for the nice replies!

3
Released Modifications / Zombies! - Server side scripts
« on: May 24, 2015, 11:34:40 pm »
Hey all!

Some of you might be familiar with the FH Zombie server. It has, for a time, been one of the most popular mount & blade servers.
I've decided to release the scripts used for that server for anyone's use.

Features :
  • Auto-switching of survivors when they get killed by zombies
  • Normal Zombies can only be partizani
  • Zombies cannot shoot, pick up guns or ammo
  • Zombies cannot switch back to survivors
  • Zombies run much faster, but are weaker
  • Rounds end when all survivors are dead, all players are then switched back to survivors
  • There can be one Alpha Zombie, which is stronger and more resistant than normal zombies (line militia class)
  • Zombies partially ignore the slowness caused by water
  • It is no longer possible to spam tnt. Only less than three tnt crates can be present on the map at any given time
  • Zombies spawn more frequently with bottles
  • Bonuses:
    • Survivors gain reloading speed by killing more zombies
    • Zombies do more damage the more they kill
    • Zombies get more health the more they die
2 attachments :
zombie_Module : For players who haven't touched scripts in the least, simply unzip this folder in your server's module files (/Modules/Napoleonic Wars) and replace the existing ones (don't forget to make a backup)

Scripts_Zombies : For scripters and more advanced users. These are the scripts used to build the module. You're free to change them. In module_strings.py, you can customize the server messages (notice1 to notice10) and the welcoming message.

I hope you put these files to good use!
Enjoy.

4
Modifications / Re: Sublime text - Modding tool
« on: June 14, 2014, 05:39:31 pm »
I know you can do most of it, but it was a lot easier than when I tried with notepad++. In that one, I couldn't figure out for example use regular expressions in your language definition, which allows you to color similar elements really easily in the mount and blade syntax. I also think it's impossible to rebind mousekeys . I know those are all small things, but sublime lets you do it really easily and it's just generally more flexible.

And really, I only wanted to give people one more tool choice when it comes to modding.

And thanks, joer.

5
Modifications / Sublime text - Modding tool
« on: June 14, 2014, 03:43:13 am »
Hey guys, I recently discovered Sublime text. It's a text editor, like notepad++, but it is in my opinion far better. So I've created a couple of things which make modding for warband a bit easier with Sublime's great customization tools.

Theme: Makes everything look pretty.
Spoiler
[close]

Auto-completing snippets.
Spoiler
[close]
List of trigger-words:
  • Broadcast -> store_string and call_script broadcast
  • Try -> try begin, try else
  • Script -> creates the structure for a new script
  • Event-> creates the structure for a new element in mission_templates.
  • Loop-> creates the structure for a new loop (player, agents, or props)

And the greatest thing is it's really easy to add or modify snippets or the theme.

You can download sublime text from here : http://www.sublimetext.com/3
To install, simply create a new folder under [username]\AppData\Roaming\Sublime Text 3\Packages and call it something like MnB, then extract the zipped file in it. Select MnB from the language setting in Sublime that can be found on the bottom right of the screen, and change the theme to MnB-Dark in Preference->Color Scheme from the menu bar.

6
Modifications / Re: Edit Mode - Window resize/rotate values?
« on: June 04, 2014, 04:10:41 am »
As far as I can tell that feature doesn't exist. The editor is really pretty oudated and not very good at all. One thing you can do though, is copy the rotation of a prop by pressing shift-r with the prop selected. You can then select another prop and by pressing R you will automatically rotate it in the same way the first prop was.

7
Modifications / Re: Have a question about Modding? Ask Here!
« on: May 25, 2014, 04:03:44 am »
It's just a small mistake, you have to replace
(is_between, ":troop_no", "trp_french_infantry", "trp_french_ship"),
by
(this_or_next|is_between, ":troop_no", "trp_french_infantry", "trp_french_ship"),

This way it creates an or between the two conditions, instead of an and.
They way you had it set up it would check if it's between french_infantry and french_ship AND between french_ship_cannon and napoleon. Which is impossible.

Also, the way you have it set up, they'll be able to choose napoleon, so you might want to replace trp_napoleon by trp_prussian_infantry.
(you can see the list of troops in the file ID_troops.)

Hope this helps.

8
Modifications / Re: Have a question about Modding? Ask Here!
« on: May 24, 2014, 06:24:52 pm »
It's the perfect place to ask. I'm actually the one who made the scripts for the zombies server. What I did, and it may not be the most efficient way of doing it, is adding a new condition in the script

check_troop_availability

right before this part at the end,
Code
(try_end),
 
(try_begin),
       (gt,":fail_message",-1),
       (str_store_string, s22, ":fail_message"),
(try_end),

add something like

Code
 
(try_begin),
(is_between, ":troop_no", "trp_russian_opol_nco", "trp_austrian_infantry"),
(try_begin),
   (eq,":store_messages",1),
   (str_store_troop_name_plural, s21, ":troop_no"),
   (assign, ":fail_message", "str_already_to_many_players_class_s21"),
   (str_store_string, s4, "str_zombie_partizan"),
   (multiplayer_send_string_to_player, ":player_no", multiplayer_event_show_server_message, s4),
(try_end),
(assign, ":class_ok", 0),
(try_end),

(is_between, ":troop_no", "trp_russian_opol_nco", "trp_austrian_infantry"), 
is your condition for the troops you want to restrict.

(str_store_string, s4, "str_zombie_partizan"),
(multiplayer_send_string_to_player, ":player_no", multiplayer_event_show_server_message, s4),

and these lines are optional, they only show a message to the player telling them that they have to go partizan.

Since this code is only going to be server side, it'll look like you can select these troops but in reality, once you click, you won't change.

Don't hesitate if you have any more questions.


9
Modifications / Re: Have a question about Modding? Ask Here!
« on: May 11, 2014, 01:56:55 am »
Yes. If you look at the script that gets called, script_random_item_selection, it randomizes all the items to give you one of each. (equipment, main weapon and secondary weapon).

10
Modifications / Re: Have a question about Modding? Ask Here!
« on: May 11, 2014, 01:33:23 am »
You'd have to add the troop in the check that decides if that troop gets random equipment in the script that runs after they die.

Code
 #script_multiplayer_client_on_agent_killed_or_wounded_common
  # INPUT: arg1 = dead_agent_no,
  # OUTPUT: none
  ("multiplayer_client_on_agent_killed_or_wounded_common",
   [
     (store_script_param, ":dead_agent_no", 1),
     
     (try_begin), # Player side only.
       (neg|multiplayer_is_dedicated_server),
       #Beaver
       (try_begin),
         (agent_is_active,":dead_agent_no"),
         (agent_stop_sound,":dead_agent_no"),
       (try_end),
       
       (multiplayer_get_my_player, ":my_player_no"),
       
       (player_is_active,":my_player_no"),
       (player_get_team_no, ":my_player_team", ":my_player_no"),
       
       (player_get_agent_id, ":my_player_agent", ":my_player_no"),
       (agent_is_active,":my_player_agent"),
       
       (try_begin),
         (eq, ":my_player_agent", ":dead_agent_no"), # I'm Dead =(
         
         (try_begin),
           (gt, "$g_client_drown_sound_channel", -1),
           (stop_sound_channel, "$g_client_drown_sound_channel"),
           (assign,"$g_client_drown_sound_channel",-1),
         (try_end),
         
         (try_begin),# Run the flag presentation when you died.
           (eq, "$g_multiplayer_game_type", multiplayer_game_type_headquarters),
           (neq,":my_player_team",multi_team_spectator),
           (neg|is_presentation_active,"prsnt_multiplayer_team_select"),
           (neg|is_presentation_active,"prsnt_conquest_flag_select"),
           
           (start_presentation,"prsnt_conquest_flag_select"),
         (try_end),
         
         (try_begin), # And randomise your item selection ^^
           (player_get_troop_id,":my_troop_id",":my_player_no"),
           (this_or_next|eq,":my_troop_id","trp_russian_partizan"),
       (this_or_next|eq,":my_troop_id","trp_british_ship"),
       (this_or_next|eq,":my_troop_id","trp_french_ship"),
                       (this_or_next|eq,":my_troop_id","trp_austrian_infantry2_flute"),   <----------ADD THIS LINE
           (eq,":my_troop_id","trp_russian_cossack"),
           #(is_between,":my_troop_id",multiplayer_troops_begin,multiplayer_troops_end),
           #(call_script, "script_multiplayer_get_troop_class", ":my_troop_id"),
           #(assign, ":selected_troop_class", reg0),
           (try_begin),
           #  (this_or_next|eq, ":selected_troop_class", multi_troop_class_mm_artillery),
           #  (this_or_next|eq, ":selected_troop_class", multi_troop_class_mm_rocket),
           #  (eq, ":selected_troop_class", multi_troop_class_mm_sapper),
           #  (call_script, "script_random_item_selection", ":my_troop_id",0),
           #(else_try),
             (call_script, "script_random_item_selection", ":my_troop_id",1),
           (try_end),
           (call_script, "script_multiplayer_send_item_selections"),
           #Beaver End
         (try_end),


         
         (call_script,"script_multiplayer_client_show_respawncounter"),
 
         (store_mission_timer_a, "$g_multiplayer_respawn_start_time"),
       (try_end),
     (try_end),
  ]),


11
Have you tried in module_factions ?

12
Modifications / Re: Have a question about Modding? Ask Here!
« on: May 08, 2014, 02:00:29 am »
Well it's not glitchy for me, but I think I found the script you were looking for. Is it multiplayer_fill_available_factions_combo_button ?

13
Modifications / Re: Saxingers Serverscrips for NW [OSP]
« on: April 26, 2014, 02:39:47 am »
A flexible way to do the positionning would be to place entry points set to a specific value on the map. Then, in the code, all you'd have to do is spawn muskets at those positions at the start of every round. I haven't tried anything like that , but it should work.

14
Modifications / Re: Saxingers Serverscrips for NW [OSP]
« on: April 19, 2014, 03:23:40 pm »
Have you tested those scripts on an actual server, without having using them on your computer (as players would) ? I'm just asking because I had some issues with @ strings that didn't not display correctly client-side. You actually have to add them to the string file, instead of using them directly.

Also, instead of using a counter for your announcements, you could just change the 1 in the header

automatic_server_announcement = (
    1, 0, 0, [(multiplayer_is_server),],

for a 300, which will make this trigger only once every 3 minutes. The store_random_in_range only stores a value in the range excluding the last, so you might want to change it 1-6.

Finally, the way you made the welcome message, it seems that the person joining will get one welcoming message for every person on the server. I'm not even sure it will properly compile since you have a # in the middle of a line.

I do think it's a great idea and I'm happy to see more people getting into scripting, but for server scripts you should always try to test them on a server with a couple of friends. It's never working the same way it does in single-player.

Good luck.

15
Servers / Re: The Jail Break Server
« on: April 09, 2014, 01:28:17 am »
I hope this one finally fixes the balance issue. If it does not, I'll just make it simpler and make it a fixed value of 33% instead of messing with making it modifiable.

Pages: 1 2