[Script update] WxW (version 0.7) (INCLUDED IN HEDGEWARS)

8 replies [Last post]
Wuzzy
Wuzzy's picture
User offline. Last seen 24 min 45 sec ago. Offline
Joined: 2012-06-20
Posts: 1063

Summary: I have made really, really many updates and improvements to the built-in WxW script.


I have worked on the official WxW (Wall-to-wall) script from Hedgewars 0.9.21.
I hope to see this update becoming a regular part of Hedgewars.

If you don't know what this WxW script is for: See here for a description of WxW (NOTE: This describes the official Hedgewars WxW only! Not version 0.7).

The biggest update I made is adding support for multiple sets of walls to choose from.
The wall sets have names and can be selected before the start of the game (like before).

These are the names you can encounter:

  • Left and right: Classic 2 walls mode, you must touch the left and right border.
  • Roof: Just 1 wall, the top part of the map border
  • Left, right and roof: Combination of the 2 above
  • Inside: A map-specific set of walls where all walls are part of the terrain. These wall sets can also be played with no border
  • Mixed: A map specific set of walls where some walls are part of the terrain and some walls are part of the border.

So it is more than just the “all or nothing” approach (official WxW only allows you to select all or 0 walls).

WxW now allows to set almost all game modifiers, except Place Hogs (this is always disabled, mostly because I can't figure out stuff).
Even the border can be disabled, WxW will remove all wall sets which touch the border (only Inside wall sets will remain).

The following maps have Inside wall sets:

  • Ropes, HellishRopes, MaskedRopes, TransRopes2
  • ShoppaKing
  • ShoppaHell
  • ShoppaNeon
  • ShoppaWild
  • ShoppaDesert
  • Shoppawall, ShoppaWall2
  • ShoppaOnePiece2
  • ShoppaRainbow

Remember, the wall-touching rule is optional in WxW.

DOWNLOAD:
Script_WxW_v0.7.hwp



Other changes

Apart from massively tweaking Walls Before Crate rule, some new rules and settings are also available for you to choose from:

  • Attack From Rope: You can only attack while you are on a rope. Weapons which can't be used on a rope are removed from the game
  • Crate Before Attack: You can only attack after you collected at least one crate in the turn
  • All But Last: You must not attack the lowest-health team alone, otherwise you must skip one turn
  • Kill The Leader: You must (also) hit the highest-health team in your attacks, otherwise you must skip one turn
  • Crates per turn: Choose how many crates drop in a single turn

This script supports the script parameter, read the Lua script (just the top of it, which is a comment, not code) for more information. With the script parameter you can set everything which you can also set in the in-game menu. You can also disable the menu (allowing for you to write schemes for WxW script without having to use the menu all the time) and set the maximum number of crates which can be in the game.



NOTE: This script does not use the Shoppa scheme by default, but a scheme called “WxW”, which I have crated along with this update.

Here is a set of 3 WxW schemes for schemes.ini:

  • WxW: Standard game scheme: All WxW settings at default, menu is active. Use this scheme to copy it and create your own variations. Why not, for example, enable place hog mode?
  • W2W: Skips the menu and immediately starts with a classic 2 walls game (left and right border)
  • W4W: Skips the menu, selects a set of 4 random walls (if available)

47\name=WxW
47\fortsmode=false
47\divteams=false
47\solidland=true
47\border=true
47\lowgrav=false
47\laser=false
47\invulnerability=false
47\resethealth=false
47\vampiric=false
47\karma=false
47\artillery=false
47\randomorder=true
47\king=false
47\placehog=false
47\sharedammo=false
47\disablegirders=true
47\disablelandobjects=true
47\aisurvival=false
47\infattack=false
47\resetweps=false
47\perhogammo=false
47\disablewind=false
47\morewind=false
47\tagteam=false
47\bottomborder=false
47\damagefactor=100
47\turntime=30
47\health=100
47\suddendeath=50
47\caseprobability=1
47\minestime=3
47\minesnum=0
47\minedudpct=0
47\explosives=0
47\healthprobability=0
47\healthcaseamount=25
47\waterrise=0
47\healthdecrease=0
47\ropepct=100
47\getawaytime=100
48\name=W2W
48\fortsmode=false
48\divteams=false
48\solidland=true
48\border=true
48\lowgrav=false
48\laser=false
48\invulnerability=false
48\resethealth=false
48\vampiric=false
48\karma=false
48\artillery=false
48\randomorder=true
48\king=false
48\placehog=false
48\sharedammo=false
48\disablegirders=true
48\disablelandobjects=true
48\aisurvival=false
48\infattack=false
48\resetweps=false
48\perhogammo=false
48\disablewind=false
48\morewind=false
48\tagteam=false
48\bottomborder=false
48\damagefactor=100
48\turntime=30
48\health=100
48\suddendeath=50
48\caseprobability=1
48\minestime=3
48\minesnum=0
48\minedudpct=0
48\explosives=0
48\healthprobability=0
48\healthcaseamount=25
48\waterrise=0
48\healthdecrease=0
48\ropepct=100
48\getawaytime=100
48\worldedge=0
48\scriptparam="walls=leftright, AFR=true, menu=false"
49\name=W4W
49\fortsmode=false
49\divteams=false
49\solidland=true
49\border=true
49\lowgrav=false
49\laser=false
49\invulnerability=false
49\resethealth=false
49\vampiric=false
49\karma=false
49\artillery=false
49\randomorder=true
49\king=false
49\placehog=false
49\sharedammo=false
49\disablegirders=true
49\disablelandobjects=true
49\aisurvival=false
49\infattack=false
49\resetweps=false
49\perhogammo=false
49\disablewind=false
49\morewind=false
49\tagteam=false
49\bottomborder=false
49\damagefactor=100
49\turntime=30
49\health=100
49\suddendeath=50
49\caseprobability=1
49\minestime=3
49\minesnum=0
49\minedudpct=0
49\explosives=0
49\healthprobability=0
49\healthcaseamount=25
49\waterrise=0
49\healthdecrease=0
49\ropepct=100
49\getawaytime=100
49\worldedge=0
49\scriptparam="wallsnum=4, AFR=true, menu=false"


(Mostly) full changelog:

  • Support for multiple sets of walls per map (instead of “all or nothing”)
  • Ropes, ShoppaKing, ShoppaHell and ShoppaNeon can now be played with the classic left and right walls
  • New wall sets for Ropes, ShoppaNeon, ShoppaDesert, ShoppaWild, ShoppaKing and ShoppaHell.
  • Basic support for a bunch of Shoppa maps
  • Script parameter support (see Lua file comment for documentation)
  • Possible to set max. number of weapons in game (script parameter only)
  • Possible to set number of crates per turn
  • Menu can be disabled (with script parameter “menu=false”) for insant game start
  • WxW is now fully functional even without a map border.
  • WxW now allows for almost all game modifiers to be changed, the only exception is crate probabilities
  • More sound effects
  • No smoke when hog is near near a WxW wall but walls need not to be touched
  • More readable mission display after configuration has been accepted
  • Hide “Surf Before Crate” setting if surfing is disabled for this map, or the bottom is active and water never rises
  • Hide walls setting if script does not provide walls for map yet
  • Bugfix: Other player was able to change the menu config in the short period before the first "turn"
  • Lots of refactoring
  • Freeze crates at turn start if Walls Before Crate or Surf Before Crate is enabled (they unfreeze if you have surfed/touched all walls/did both)
  • Add optional “Crate Before Attack” rule
  • Add optional “All But Last” rule
  • Add optional “Kill The Leader” rule
  • Allow toggling the radar with Switch Hog (Tabulator by default) while you are roping or have rope selected

Hi, I am a Hedgewars developer. Smile I accept personal donations in bitcoin. Heart 17fsUywHxeMHKG41UFfu34F1rAxZcrVoqH

Wuzzy
Wuzzy's picture
User offline. Last seen 24 min 45 sec ago. Offline
Joined: 2012-06-20
Posts: 1063

I just released version 0.6, this is a pure bugfix update. 2 stupid bugs are fixed. xD

Changelog:

  • Bugfix: 2 crates spawned at the 1st turn if script parameter was set to “menu=false, walls=none” or similar
  • Bugfix: Annoying faulty error message appeared when hitting attack when on a rope with a weapon selected

Download link is in first post.

By the way: It would be nice to see this scipt update in official Hedgewars, eventually. Smile

Hi, I am a Hedgewars developer. Smile I accept personal donations in bitcoin. Heart 17fsUywHxeMHKG41UFfu34F1rAxZcrVoqH

Wuzzy
Wuzzy's picture
User offline. Last seen 24 min 45 sec ago. Offline
Joined: 2012-06-20
Posts: 1063

Big update! Version 0.7 has been released today.

Changelog:

  • To enforce the rules more strictly, all crates will be frozen at turn start if Walls Before Crate or Surf Before Crate rule is in place. The crates are unfrozen if you met the crate criteria (that is, surfed and/or bounced off all walls). Frozen crates can't be collected and appear as small white dots in the radar.
  • Add support for the “Crate Before Attack” rule: If enabled, you must collect one crate in your turn before you can attack.
  • Add support for the “All But Last” (ABL) rule: If enabled, you will be penalized with one forced skip if you attack the lowest-health team alone.
  • Add support for the “Kill The Leader” (KTL) rule: If enabled, you will be penalized with one forced skip if you attack other teams, but not the leading one (if you are the leader, attack the runner-up).
  • You can toggle the crate radar with “switch hog” key while roping
  • The game continues now with the first team after the menu has been closed (rather than the second team)

This WxW script has become pretty big now. The rules were all taken from the Worms Armageddon community, of course, with the difference that the script actually enforces the rules directly. Smile

I am not sure what to think about the All But Last/Kill The Leader rules for now. Do you think a forced skip is okay? I have also thought by making “protected” teams invulnerable, for instance, if ABL is enabled, add invulnerable to all hogs of the last team. It sounds interesting to me, but I am not sure. However, this does not prevent killing by drowning ... :-/

In general, WxW 0.7 is a pretty powerful script in my opinion, allowing you to set many options and rules additional to the basic game scheme settings.
I put a lot of work on the “walls” part in version 0.5 and I consider it finished. But this script is also perfectly capable

So this script has now basically become a collection of rules and settings to play around with, for Shoppa games. The walls part is still a big one, of course, but with 0.7 I have moved the focus to other Shoppa-style games.

I think the name “WxW” might even be misleading now, since it is not just about walls. Hell, the Walls Before Crate rule was already optional in the official Hedgewars version of the script.
I am actually considering to change the name of this script, but I am not sure which one to use. I am open for suggestions. Smile

I have one major plan for my (unoffical) version 1.0 (apart from a lot of testing), should I ever finish it: Add support for configurable weapons. Currently, the weapon set is fixed and the weapon scheme can not be edited. I plan to fix this by making the script recognize custom weapon schemes, so users may set their own crate probabilities and stuff.

Hi, I am a Hedgewars developer. Smile I accept personal donations in bitcoin. Heart 17fsUywHxeMHKG41UFfu34F1rAxZcrVoqH

TheMadCharles
TheMadCharles's picture
User offline. Last seen 12 weeks 50 min ago. Offline
Joined: 2012-10-19
Posts: 121

Wuzzy allegedly wrote:

I am not sure what to think about the All But Last/Kill The Leader rules for now. Do you think a forced skip is okay? I have also thought by making “protected” teams invulnerable, for instance, if ABL is enabled, add invulnerable to all hogs of the last team. It sounds interesting to me, but I am not sure. However, this does not prevent killing by drowning ... :-/

In some of the WA leagues, there is a "cow" penalty of inflicting the same damage to your worms *cough* hedgehogs. [refrence]

I was also thinking of adding some of the rules to Game Hacks, however some of the rules are land-depended

EDIT1: How about instead of the configuration menu, put all of the rules to the scheme parameter? Nvm, that's already here

EDIT2: I have a suggestion. If CBA is enabled, whenever you don't collect the crate, it will delay all weapons (exept for rope, some utils, maybe chute?). This may allow for having infinity of some weapons in game, like zooka and pneutomatic drill. When you collect the crate, the weapons become available

Wuzzy
Wuzzy's picture
User offline. Last seen 24 min 45 sec ago. Offline
Joined: 2012-06-20
Posts: 1063

Hmmm, I need to think about that. Also, probably I don't intend to work on this script for a while. At least for now. Maybe I start later again.
Also, I have decided not to change the rules too much before some playtesting has been done.

Hi, I am a Hedgewars developer. Smile I accept personal donations in bitcoin. Heart 17fsUywHxeMHKG41UFfu34F1rAxZcrVoqH

cri.thegrinch
User offline. Last seen 37 weeks 1 day ago. Offline
Joined: 2013-06-05
Posts: 82

Isn't a way to make coloured crates? so only the team who generates them can get them?

I Hate Christmas timeeee.. Santa! is dead!

sheepluva
sheepluva's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 2009-07-18
Posts: 527

cri.thegrinch allegedly wrote:

Isn't a way to make coloured crates? so only the team who generates them can get them?46th

Ooh. I like that idea.

  sheepluva <- me  my code stats -> 
a Hedgewars Developer


   <- where I'm from  what I speak -> 

Wuzzy
Wuzzy's picture
User offline. Last seen 24 min 45 sec ago. Offline
Joined: 2012-06-20
Posts: 1063

Oh, I totally forgot to say.

The WxW script updates I made over the years have become part of Hedgewars developer version a few months ago. They will be available in the next release.
As you probably know already, the most important change is the support for selecting different wall sets before playing (e.g. left/right wall, or left+right+roof, or even on the inner walls).
Smile

Basically all the changes I wrote about in the first post are included, and a couple of other ones, including:

- Limit maximum number of crates in game
- Script works even on maps without a map border (but walls are only supported if the script suppots the map)
- More sound effects
- Allow toggling the crate radar with the switch hog key (Tab)
- Much more!

Hi, I am a Hedgewars developer. Smile I accept personal donations in bitcoin. Heart 17fsUywHxeMHKG41UFfu34F1rAxZcrVoqH

Copyright © 2004-2017 Hedgewars Project. All rights reserved. [ contact ]