Page 23 of 24

Re: New Dynamic Script Ideas

PostPosted: 17 Sep 2017, 18:40
by Rey
Oh, sry, I forget to tell that is was implemented for the next vertion. There is no such functionality in r6720 ...

Re: New Dynamic Script Ideas

PostPosted: 17 Sep 2017, 18:43
by Strangelove
Oh, sry, I forget to tell that is was implemented for the next vertion. There is no such functionality in r6720 ...
You just broke my heart... </3

Re: New Dynamic Script Ideas

PostPosted: 17 Sep 2017, 19:26
by Rey
Hope you will be able to assemble all of it pieces back when new version will be released :rolleyes: :D

Re: New Dynamic Script Ideas

PostPosted: 18 Sep 2017, 18:14
by Strangelove
Hope you will be able to assemble all of it pieces back when new version will be released :rolleyes: :D
I'll try my best :D

Re: New Dynamic Script Ideas

PostPosted: 23 Dec 2017, 16:49
by Toxic
We are thinking about 2 new scripts:
  1. Change parameters in gRes.Units: Hitpoints, Attack, AttackHorse, Defence, DefenceVsProjectiles = you can balance warrior's stats by the script (let's make archers less OP in your scenarios etc.)
  2. Switch players (switch AI and player or switch 2 players).
Your opinions?

Re: New Dynamic Script Ideas

PostPosted: 23 Dec 2017, 17:53
by Strangelove
We are thinking about 2 new scripts:
  1. Change parameters in gRes.Units: Hitpoints, Attack, AttackHorse, Defence, DefenceVsProjectiles = you can balance warrior's stats by the script (let's make archers less OP in your scenarios etc.)
  2. Switch players (switch AI and player or switch 2 players).
Your opinions?
I would love that for exaclty the reason you meantioned: Giving Warriors and Barbarians separate rolls. I'd love to have that option for my campaign especially.
I, however, also see a lot of danger in implementing those script-commands. It might not be a good idea if every map-maker trys to give each unit different stats, since it would be very confusing and inconsistant...

Re: New Dynamic Script Ideas

PostPosted: 25 Dec 2017, 00:11
by sado1
I think that changing unit stats is in general a good idea, but instead of using it properly, in a way I'd like people to use them (RPG style maps in KaM, campaigns with slightly different unit stats, etc.), what will happen is people will add ridiculous unit stats to their Cursed Ravine scripts, making militia 1000 times better or something. Whether they'll do it for cheating purposes, or just to change the gameplay, is another question... Also, if the gamemode isn't explicitly "special map style" (and the player fully expects something ridiculous to happen, like every unit having random stats, bowmen one-shotting knights, etc.), even if it's a SP campaign for example, it will be very inconsistent if suddenly you notice one of the units is much worse/much better than usual.

On the contrary, I see no reason that switching players shouldn't be added.

Re: New Dynamic Script Ideas

PostPosted: 25 Dec 2017, 16:50
by Krom
+1 on sado opinion

KaM is much too fragmented to keep on fragmenting it further in such way

Re: New Dynamic Script Ideas

PostPosted: 26 Dec 2017, 18:13
by Toxic
Thank you for your feedback.
... people will add ridiculous unit stats to their Cursed Ravine scripts, making militia 1000 times better or something. Whether they'll do it for cheating purposes, or just to change the gameplay, is another question...
I dont understand - if you want to make militia OP (or make other cheats) you can do it already with current set of script commands (States.PlayerName = ... is just too deadly). So far I never saw someone who has made unbalanced script with purpose. However, I met with several people who at least tried to do something like "story map" with few OP units which are controled by player. It could open completely new mode.

This script doesn't have to be dynamic - maybe we can add it to static scripts where you need KaM_Decoder to change something and game can also recognize in lobby whether there are changes in parameters (and maybe throw something about balance into chat menu - simple and completely predictable).

Re: New Dynamic Script Ideas

PostPosted: 27 Dec 2017, 08:37
by Krom
A sort of scale could be nice, indicating how "modded" the game is in current lobby - vanilla, just scripted, scripted and rebalanced, .. , totally insane.

Re: New Dynamic Script Ideas

PostPosted: 29 Dec 2017, 14:50
by sado1
You got me convinced. I tried to sort-of remake HoMM in KaM myself, for example, but it was way too difficult with what scripting tools we had. Maps like The Adventurer's Journey, The Conquest, Magic Arena are all obviously inspired by RPG and turn-based strategy genres, such scripted maps could massively benefit from custom unit stats.

As for my concern about the modded unit stats maps taking over the classic way of playing, dividing the community even more... I've had a second thought on that, and I think most of the damage was already done years ago, so at this point it shouldn't become a worse problem anyway, so why not add something new that would allow some new, fun special maps to be created? Furious Warriors and especially Knights Evolve actually helped to connect TS and public communities because these gamemodes are equally fun for both of these playerbases, not requiring good building skills and letting everyone simply to get into the fight immediately. Plus, this is an opportunity to rapidly test alternate units balance for the entire game, just by changing some values in a script, which will most likely be very good for testing the upcoming version's unit balance (townhall changes?)

The "modded" indicator in lobby (and on the singleplayer mode's map list as well) would be a very nice touch, too, and it eliminates the problem of not being able to immediately see the extent of changes a script provides. I have no idea how to pull it off properly if we want to have a scale (something more sophisticated than "scripted" and "not scripted") - easiest solution would be a line in the script, to define the level/type of modifications. (something like, gameplay and stats completely changed, gameplay changed, gameplay not affected?). Can we get a similar indicator for "rookie/medium/pro" level peacetime/speed settings? Let's say x1-x1,5 and peacetime range 50-70 is pro level, 75-95 x2+ medium, 100-120 (regardless of speed) rookie? The names of the settings probably would need to change.

Re: New Dynamic Script Ideas

PostPosted: 30 Dec 2017, 18:17
by Strangelove
You got me convinced. I tried to sort-of remake HoMM in KaM myself, for example, but it was way too difficult with what scripting tools we had. Maps like The Adventurer's Journey, The Conquest, Magic Arena are all obviously inspired by RPG and turn-based strategy genres, such scripted maps could massively benefit from custom unit stats.
Agree! This would give scripters the tools to experiment more and open up the possibility for more RPG-like gamemodes.
As for my concern about the modded unit stats maps taking over the classic way of playing, dividing the community even more... I've had a second thought on that, and I think most of the damage was already done years ago, so at this point it shouldn't become a worse problem anyway, so why not add something new that would allow some new, fun special maps to be created? Furious Warriors and especially Knights Evolve actually helped to connect TS and public communities because these gamemodes are equally fun for both of these playerbases, not requiring good building skills and letting everyone simply to get into the fight immediately. Plus, this is an opportunity to rapidly test alternate units balance for the entire game, just by changing some values in a script, which will most likely be very good for testing the upcoming version's unit balance (townhall changes?)
Even tho this sounds quite good, I am unsure if further dividing the playerbase is a good idea. On the other hand, it might increase the playerbase and revive the game a bit. Like you already noted: This script command would certainly be usefull for testing balance for upcoming releases.
The "modded" indicator in lobby (and on the singleplayer mode's map list as well) would be a very nice touch, too, and it eliminates the problem of not being able to immediately see the extent of changes a script provides. I have no idea how to pull it off properly if we want to have a scale (something more sophisticated than "scripted" and "not scripted") - easiest solution would be a line in the script, to define the level/type of modifications. (something like, gameplay and stats completely changed, gameplay changed, gameplay not affected?).
Seems like alot of hassle for a single added script command. A line in the script is not really an objective classification and could easily be manipulated. I would prolly be the best idea if the game just displayed a note/disclaimer automaticly if a specific script commands is present.
Can we get a similar indicator for "rookie/medium/pro" level peacetime/speed settings? Let's say x1-x1,5 and peacetime range 50-70 is pro level, 75-95 x2+ medium, 100-120 (regardless of speed) rookie? The names of the settings probably would need to change.
Why? I do not think this is necessary. It might actually be confusing for new players, since in other games the pros usually play on higher speed.

Re: New Dynamic Script Ideas

PostPosted: 31 Dec 2017, 11:14
by Strangelove
I'd like to suggest a couple of new Event-procedures:
OnHouseSiteDigged, OnRoadSiteDigged, OnWineFieldSiteDigged, OnRoadBuilt, OnFieldBuilt, and so on...

At the moment we only have OnHouseBuilt. It would be nice to have those kind of procedures for Roads, Fields and Winefields as well.

(Sorry for the double-post)

Re: New Dynamic Script Ideas

PostPosted: 31 Dec 2017, 19:06
by grayter
could you explain why this commands are needed? could you provide some useful scripts ideas based on this?

Re: New Dynamic Script Ideas

PostPosted: 01 Jan 2018, 14:55
by Strangelove
could you explain why this commands are needed? could you provide some useful scripts ideas based on this?
There are too little Event-procedures atm so I find myself using OnTick way too often.
I also have a few script ideas, I'd like to turn into some minigames. I don't wanna reveal anything tho. :x

If you want I can give some basic examples:
I could use OnHouseSiteDigged to trigger an Event instead of checking States.HouseSiteIsDigged OnTick . Also I could add materials to a already digged site. If i remember correctly, only digged sites have an ID, so getting the IDs of future buildings would be more convenient.