Gameplay information visibility

Discussion in 'Suggestions' started by Anthodeus, May 3, 2017.

  1. Anthodeus

    Anthodeus Hackermann

    Hey there guys, I'm creating this thread as I've not seen any other mentioning related issues and I thought this would be valuable information for the community, as well as developers. I will put in a tl;dr section at the end of the post for those who don't want to bother reading details.

    1. Tooltips and game info

    Having played this game for quite a while, I've managed to understand some things only through playing that aren't obvious otherwise. Exposing this information to the player as he plays would be a great addition to gameplay. One great example for this would be the stand ground stance. I'm not sure how many people know that infantry units in a formation gain a total of 7atk and 7def from standing ground. When fighting against an army that holds position, if you do not know this information, the enemy has a great advantage over you. This otherwise avoidable head-on attack turns into a massacre of your people. One other issue that I would regard more as a bug than anything would be that clients in a game do not see the bar for "stand ground" filling up. This makes it harder for them to know when they have the bonus (which, again, is never shown even if they have it).

    Everybody loves a server with good settings. Some of us forget or disregard details we didn't really care about, although they might have a great impact during gameplay. Knowing whether the enemy can capture your stuff (or what of it he can capture) or if you're going to have to pay that much more for artillery is good information. Maybe not necessary if you've paid attention in the lobby, but good for the situations where the host changes settings at the last moment or the player hasn't really looked into it. Regarding server settings, it would be nice if everyone got unreadied the moment the host changes options.

    Drawing the range units could shoot at would be an interesting addition to the set of necessary information for the player. This, by itself, would solve the problem of people having to figure out that "hills give more range". Having an icon appear next to said unit's health bar or anything of the sort would also help with understanding that they are "harder to hit". I'm not entirely sure about the impact of this, but there seems to be an effect. Telling artillery to bombard an area would also be made more convenient for when you want it not to move from its position (in addition, drawing an area where all artillery could fire without any of them moving would be that much more useful).​

    2. Config file settings

    I have looked into the config files found while searching for a way to change hotkeys. I've managed to change all the building hotkeys and some units commands to something I found more convenient (will upload the file if anyone wants it). There was a hotkey at the end of the document for upgrading mines that I've found no way to enable. I would appreciate if it is implemented at some point. I've also noticed that there are no hotkeys for creating units out of production buildings, and this could be added, but it is not completely necessary since we do have "infinite production" possibilities (although it would help for making generals, drummers, cavalry that we'd use for exploring, ships and artillery pieces)

    While doing so, I've went and had a look through other files in the folder I found the hotkey config. One of these files was the configuration for formations. This aroused my interest, so I went digging through the settings while also testing out changes in the editor. What I have found is that some changes are really useful for gameplay, and it would be a good idea to give it more exposure to players. Creating custom formations is very useful for players at all experience levels, and it adds enjoyment as you get to see your creations in-game. Examples for this would be the "spread-out" formation for infantry, which is useful against artillery fire since all soldiers are spaced out more, thus a cannon ball is less effective when striking in the middle of an army, and another would be the "spread" formation for cannons, which again, because of aoe damage, is of use when fighting artillery with your own artillery (otherwise, we could individually position each artillery piece, but as soon as the battle line changes angle, there'd be need for repositioning; also, advancing the artillery would be a lot easier)

    This is the point where I would suggest a separation of the config files. As stated before, the stand ground stance adds stats. All these stats are represented in the formations file, alongside the formation layout. The problem with this, as I've tested out with me hosting as well as a friend hosting, both of us alternatively changing the files, is that the host can change the values for certain formation to add a lot more defense and attack to the grouped units. To make stuff weirder, you can change the so called "KARE" formations to look like the line formations, but make them have far greater bonuses, thus slaughtering any army that would try kill you, even though the formations would look the same. Adding to this, just adding the bonus only to the stand ground section would make it even harder to track unless you knew exactly what you were looking for. I would suggest that formation bonuses be separated from formation layouts as config files. This, together with fixing the stand ground related feedback not appearing for clients, would lead to the point where all clients to a host would need to download the host's "formationBonuses.cfg" in order for all the information to be accurate. I see no harm in the formations themselves being changed, but this is up to debate, as it could add an edge to one player (formations themselves could just be a setting in the host's game, off by default, but if activated should notify peers). Both of these configs should not overwrite the client's, since he may want to host with his own settings in the future.

    I have not gone through too much of the other files, but if anything that is changed on the host side might affect the game in a major way without the clients being aware of it, it should really be considered for a next fix.
    3. Unit info and details

    As far as I can tell, you cannot tell the stats of units during gameplay. I understand the whole "you shouldn't know what upgrades the enemy units have" and all that, as disinformation plays a major role in wars, but at the same time I can't help but wonder why I can't see my own unit information. By this I do not mean upgrades, but all the information related to the unit that is otherwise unknown. Let me explain:

    In this design document (or so I would call it) all the units have been detailed in all their glory for all to see. This document holds most of the possibly needed information. This is extremely useful for when people choose what nation to play. having a in-game glossary with each nation and all their units, together with all their details would be a great addition to the game. The wiki that I've used before this document was released was extremely poor, and just showed how little people cared about informing players about the game. Something along the lines of a "civilopedia" in civ5 or how 7kingdoms had all races detailed with their abilities would be a way to do this. Another way to go about this would be displaying all the information in-game (not necessarily upgrades, but most assuredly movement speed, fire rate and min and max range) on the finished unit, which would help the player know during the actual game how good their unit was in case they didn't know about a design document. This way, more and more players could start figuring out for themselves what nation is useful for what reasons and in what conditions (Chasseurs on stand ground would be more powerful against the less ranged foes that would need to attack into them)


    One other suggestion that might not be part of either category would be the game options when starting the game. Once the host changes these, it should unready all players, so that they get a chance to review the new options. This would prevent the host adding extra stuff right before the game starts, thus unfairly punishing those who came to play a specific game setup.

    tl;dr version:
    More information needs to be visible to the player;
    Sync client and host configs and gameplay info to reduce cheating possibility;
    Make unit stats more available to players.
    If you feel like there are other things to add/ I omitted something/ One of my points is wrong, feel free to notify me in the replies :)
     
    Last edited: May 10, 2017
    Zakxaev68 likes this.
  2. Anthodeus

    Anthodeus Hackermann

    Update:

    Apparently there's nothing stopping the host from modifying unit info without the game knowing that there are changed files. you can change unit properties, scale, speed, collision boxes, pretty much anything, by just accessing the `unit.script` and changing the values to whatever you want. An ant-sized serdiuk that rapid fires across the whole map and can even destroy buildings? Can be done (although the unit scale difference appears client side only). Changing unit speeds in any way on the host causes desync for the players, but of course the game wouldn't care about that. Want to stack all units on as small an area as possible? It is do-able by just reducing the unit collision box. Pretty much any info in the whole game is accessible via a text editor, and whatever you change will not be considered a mod unless you explicitly create it as such. Did I mention most game data is hardcoded? I mean, now that the deed is done there's no real way around it... but at least detecting changes so people would know that the server has "changed settings" would be useful. Gonna upload some videos of my "achievements" this evening after I'll try changing what units buildings can produce and all of the above serdiuk stuff (maybe gonna add pikemen to ukraine as well)

    Oh, in case nobody saw the post from the other thread about fog of war , I'll just copy-paste it here
    `Hey, here's an idea. Go to Steam\steamapps\common\Cossacks 3\data\scripts\lib , open player.script, go to line 454 and change that variable to false. There, no more fog of war. Don't worry as there's nothing checking any client for corrupt data or anything, not like we'd want a fair game right?`
     
    Last edited: May 11, 2017
  3. Bodun

    Bodun Administrator Staff Member

    Hello Anthodeus,

    We will fix this loophole in the next few updates (it`s possible that it`ld be done on the DLC release patch).

    Thank you for your report.
     
  4. Anthodeus

    Anthodeus Hackermann

    DLC - is it needed?

    Apparently not. I just tried to play a game with scotland after modifying 1 file, and hey, it all worked. I'm not saying this can be abused, but I'm pretty sure you guys want people not to have races they shouldn't have access to ( maybe you intended random to potentially choose scotland? ). Either way, the trick would be this:

    Sorry Anthodeus, it`s not allowed to share this hack with other users. Our game has open source scripts, as we wanted our users to create mods and have all the possibilities. We kindly ask you to inform us about other game-breaking cheats in private messages. Thanks for understanding

    Now, not saying this is a clean way to do it, but it works. Enjoy scotland till the patch that fixes this; maybe it'll come out at the same time as mac version ;)

    [​IMG]

    P.S. : Don't try Piedmont and Originals, they're only for campaign.
     
    Last edited by a moderator: May 12, 2017
  5. Foeurdr

    Foeurdr Moderator Staff Member

    you should tag the developper Anthodeus, so they can see it faster
     
  6. Anthodeus

    Anthodeus Hackermann

    @Foeurdr how does one do that? Who would I need to tag more specifically
     
  7. Foeurdr

    Foeurdr Moderator Staff Member

  8. Anthodeus

    Anthodeus Hackermann

    @Foeurdr right, but that does not explain who in the list of members is most suitable to be referenced here for informing about the subject. I wouldn't want to ping people that might have nothing to do with development just because they seemed to have some sort of fancy title.
     
  9. Foeurdr

    Foeurdr Moderator Staff Member

    Ah yes, correct, you can tag Bodun or Ferox they are both developper and often on the forum
     
  10. Anthodeus

    Anthodeus Hackermann

    Ah, if that's the case, @Bodun already saw the thread earlier this week. @Ferox might enjoy (or detest) seeing the updates to my thread as well. Sad that edits to the main post aren't mentioned as alerts or in any way on the forum ( that's more because of how XenForo works )
     
  11. Bodun

    Bodun Administrator Staff Member

    Hi Anthodeus,

    We will include fix for cheating with base game scripts in multiplayer games in the next patch (will be released simultaneously with DLC). As for Scotland editing, we had to edit your message to omit the direct way to enable it (btw, this exploit won`t allow you to play in multiplayer). With enough time and resources, anything could be hacked, since our game scripts are open to users, it`s easier, still it requires some programming skills. We kindly ask you to not share exploits, and inform us in private messages.

    Thank you for your reports.
     
  12. Anthodeus

    Anthodeus Hackermann

    Hy Bodun,

    The point of making it public and exposing these facts is the main point of the thread, alongside ensuring that they're dire enough so that we get fixes for them. I've seen how releasing the mac version went down on facebook (since it didn't yet come out), so creating issues that might cut deeper into the game will have a higher chance of getting real fixes. ( so I don't mind the edit to my post as long as the issue gets patched out )

    As regards to the Scotland editing, I only posted that message after playing a game with 7 other ppl in a ffa and mentioning all the modifications as well as asking them to confirm I had the faction selected in the lobby. I did check if Piedmont and Originals appear, and they do not, but Scotland does, and does indeed work in multiplayer. If you mean that following the patch and DLC it won't work in multiplayer, then I'll be looking forward to that :)
    (small update : I forgot to mention it didn't actually work in the editor, although I sort of overwrote algeria with scottish units so it might as well be there:p )

    Regarding the hacks, it took me less than 10 minutes to find those lines of code and come up with a "fix" ( my text editor did the searching in all files in the main folder, that took 5 minutes of the 10). I would suggest either packing all the scripts and includes into a greater file and run a CRC check with an expected value, or any other idea that would at least, as mentioned in the initial post, tell the client that the host has a different version (or even inform the person that modified the files when he starts up the game).

    I'm not exactly sure how hard it would be to transition to using a database for all units/buildings, but I do know that is a great change to the code structure, so I will not try to enforce that idea, but I would like to suggest it if at all possible. (would make links to upgrades all that easier to do as well)

    Have a nice day!
     
    Last edited: May 12, 2017
  13. Bodun

    Bodun Administrator Staff Member

    Hi Anthodeus,

    Yes, i've meant the upcoming patch. If you want some challenge, you may search for 4 different ways to enable Scotland and get a custom Title as 'Hackermann' :)

    Thank you for understanding.
     
  14. Foeurdr

    Foeurdr Moderator Staff Member

    Go for it Anthodeus, it's not everyday you can get a title like this !
     
  15. Anthodeus

    Anthodeus Hackermann

    Hehe, I'll surely try that after the patch comes out, as that's when I suppose the challenge would be (although multiplayer wasn't mentioned, but I'll still try to do it for that as well :) )
     
  16. Anthodeus

    Anthodeus Hackermann

    Good news : it took over 10 minutes this time to find the "fix"

    Bad news : You guys should really kick the player from host side, because I just bypass the checksum check.

    I guess you don't want details written here, so just ask for a PM if details are needed. I'll try remember how I enabled scotland, because any other script changes now work.

    So, found that other code, and in the meantime removed code for needing a password on join. Fun stuff. Does work in multiplayer, and the game does start me with scotland. Could post pictures of that as well if needed.

    Theoretically I could change some stuff around ( consider checksums the same, find a way to compute it via the formula (random numbers + game name + random numbers + smth; I didn't really pay attention) or leave the check but without it returning you to the main lobby ), but it would be pretty much the same thing, or at least around the same area

    [​IMG]

    [​IMG]
     
    Last edited: May 17, 2017
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice