Jump to content

Mentula

Community Members
  • Posts

    97
  • Joined

  • Last visited

  • Days Won

    8

Posts posted by Mentula

  1. Just now, nani said:

    From the code I see you only record serializable actions, do you plan to add local UI actions too? If so how?

    Sounds cool and complicated at the same time. I'll take note and think about it.

    Just now, nani said:

    A cool feature would be to show an UI with the steps of the macro after you record it.

    Indeed! Definitely worth of consideration.

    • Thanks 1
  2. Hi community!

    This is a mod implementing macro recording. With the Macros mod, a player can:

    1. Start recording, with a hotkey.
    2. Do some actions. Any action.
    3. Stop recording, with the same hotkey.
    4. Execute the recorded sequence of actions with a hotkey press, at any time during the game.

    I see great potential in macros. The more I think about it, the more I find use cases. Therefore, I propose: try the Macros mod, find use cases and share them.

    There's much space for new features (and you're welcome to suggest); more than that, I'm very interested in the game-changing aspects of macros.

    Be aware that...

    This mod executes automated actions. This can be considered as a cheat. When you play a game with this mod, make sure other players are aware you are using this mod and agree.

    Installation

    Click here to download the latest release. Install following the official 0 A.D. guide: How to install mods?

    Alternative downloads: Latest Release (.pyromod) | Latest Release (.zip) | Older Releases

    Contribute

    The public repository is at this page. Everybody is very welcome to contribute, suggest, fork or simply give feedback. Have fun!

    • Like 2
    • Thanks 1
  3. 14 hours ago, borg- said:

    Go to the trees closest to the cc?

    Yes, I'm not finding much sense in setting the default targets elsewhere. :scratch_one-s_head:Also, go to meat closest to CC, go to fruit closest to CC, go to stone closest to CC etc... units garrison into closest CC (QuickStart supports multiple CCs).

    I forgot to say. Downloads are (currently) for A27. The latest release of QuickStart for A26 can be downloaded here.

  4. Hi!

    Let me start with a quote from 0 A.D. - The Vision:

    Quote

    Repetition - If you find yourself doing the same action over and over without thought, then we need to either eliminate or automate such an action. Linear repetitious procedures are meaningless and boring.

    The above quote neatly summarizes the reason why I made QuickStart. QuickStart is a mod that allows to automatically perform predefined actions as game starts, reducing initial micromanagement. Official mod page on GitLab here.

    Initial steps can be customized from the Options menu, see image below:

    bitmap.png.413ccbde8d5ade03f5113ad3dc113b5e.png

    QuickStart and proGUI

    In short: proGUI mod embeds QuickStart, with differences. But if you enjoy stories and moral concerns, keep reading.

    Spoiler

    The idea of developing a framework that allows defining macros in 0 A.D. has been in my head for a while and I eventually took no real action.

    But I am a curious guy, and before giving up I wanted to explore what can be done and what can not. QuickStart has been my first project in that direction.

    Besides the practical issues, I sensed (from the forum thread on macros and further discussion) that some players express a -fully legitimate, in my opinion- concern on the definition of what is legitimate and what is not in a game. That raised some inner conflict about the opportunity of publishing QuickStart. Among the choices I had, I took the worst one: keeping it public on my GitLab and not posting it on the forum. Well done, Mentula. :pardon:

    Enters @Atrik, cutting the Gordian knot. With proGUI mod (which includes QuickStart) made public on the forum, the Pandora box has been opened and, to some extent, it relieved me of my moral dilemmas.

    QuickStart and the embedded-QuickStart-in-proGUI are currently taking two different paths code-wise and I don't know whether they will eventually merge.

    Anyway, there are multiple good reasons why a player would use QuickStart without affecting the GUI and the game session, so I will keep maintaining the project and announcing updates.

    Be aware that...

    This mod executes automated actions. This can be considered as a cheat. When you play a game with this mod, make sure other players are aware you are using this mod and agree.

    Installation

    Click here to download the latest release. Install following the official 0 A.D. guide: How to install mods?

    Alternative downloads: Latest Release (.pyromod) | Latest Release (.zip) | Older Releases

    Contribute

    The public repository is at this page. Everybody is very welcome to contribute, suggest, fork or simply give feedback. Have fun!

     

    • Like 2
  5. 5 minutes ago, Stan` said:

    @Mentula Do you have a stat that computes the number of hours you put in matches ? I wonder how hard it would be to integrate your stats in my replay database.

    Currently not, but it doesn't look hard to implement (at least, in the context of the LocalRatings mod). Basically it's a matter of summing up the game duration, alongside the other players' stats. Cool idea!

    Edit: adding up the game duration might be an imperfect solution. A problematic case is the one of a player early-quitting the game: their stats will be computed until the end of the replay, although the player has left before the end. This problem (although it's probably a minor one) also affects the way LocalRatings currently computes stats; I don't have a good solution to this.

  6. The smell of a new 0 A.D. release is in the air so... here's my TOP30 for the A26 season! :holiday:

    1819754617_Screenshotfrom2023-05-2218-39-42.png.05316046e7191f0e75c514f06460b514.pngMy settings

    Match Filters: games with < 4 players are excluded.

    Player Filters: players with < 5 games are excluded.

    Score Weights: default, apart from exploration weights set to 0.

     

    Few comments

    • Feel free to ignore #1 from the ranking; the mod tends to overestimate the owner's rating.
    • I wished I had more games played with strong players. Unfortunately some of them do not appear in the list due to the small numbers of games played.
    • Like 2
  7. 18 minutes ago, Yekaterina said:

    No. This is standard dev operation. If you want to make any mod for A26, you must unzip the public.zip in order to gain access to the asset files and templates.  I would copy the files away to my mod folder in order to not harm the source code.

    Here we're going a bit off-topic but... this is not standard dev operation.

    If you are a modder reading this, please do not follow this recommendation. There are valid guides on the forum explaining how to make mods for the game.

    • Thanks 1
  8. 4 hours ago, G.O.A.T said:

    The only way to enforce specific mods to be used - some control checksum of specific control js files would need to be generated and regularly sent to host of the game. 

    This way you would avoid "replacing files" on the fly or even putting things to "public mod only" so user would not be spotted in listing of mods.

    Sorry to say this solution does not work. One can run any "pre-approved" mod as a subroutine of another mod (or even a modified version of the engine) which emulates checksum generation, for example, sending a pre-computed checksum.

  9. 12 hours ago, Sevda said:

    so that mods like localratings take it into account. This allows you to farm localratings easily.

    I am trying to make a sense out of this. The whole point of LocalRatings being local is that the mod user is the only one who can see ratings and that ratings are calculated based on the user data. Why would one tweak a rating being the only one seeing it... self-motivation?

    PS: the fact that a user can edit a free-and-open-source project and its files (including replays) should not come as a surprise. Welcome to foss!

    • Like 5
    • Haha 2
  10. Yes, you read the title correctly: this mod causes extinctions randomly destroying your entities. Official mod page on GitLab here.

    It's a semi-serious (working!) mod, whose idea originated from joking conversations in the lobby. Too OP and want to balance games? This is your chance to set it right.

    Features

    • Set the entity reduction rate and the frequency of extinctions.
    • Intensify/alleviate the entity reduction rate and frequency over time.
    • Choose which entities can or cannot be destroyed.
    • Totally voluntary usage: other players don't have to install it to play with you.

    Is that serious?

    Yes and no, I mean... it can be fun!

    On a serious note, scenarios or campaigns can be designed on top of it. After all, the idea is not that different from already existing features such as the rising of water level in the Extinct Volcano map. Events like the spreading of the Antonine Plague, imported by the Roman legions from the Near East, immediately come to my mind; although this example is outside the 0 A.D. time frame, events like this might well fit a scenario/campaign.

    Mod options (screenshot)

    selfnerf.png.e1080bec52f549a9802b0bf8559aa957.png

    Installation

    Click here to download the latest release. Install following the official 0 A.D. guide: How to install mods?

    Alternative downloads: Latest Release (.pyromod) | Latest Release (.zip) | Older Releases

    Contribute

    The public repository is at this page. Everybody is very welcome to contribute, suggest, fork or simply give feedback. Have fun!

    • Like 3
    • Thanks 1
  11. If any of you is wondering why this mod is useful, this is what I do in almost every game: when reaching the population cap I might want to make space for new units (such as rams or elephants), so I do: 1. select all fields, 2. select one gatherer per field (using the mod) 3. destroy the selection.

    Another use case is when floating in food and short in wood. In this case one can: 1. select all fields, 2. select one gatherer per field (using the mod) 3. send selection to wood.

    In these (and certainly other) cases, one can keep field harvesting at its maximum efficiency.

    • Like 1
    • Thanks 1
  12. Hi 0 A.D. friends,

    the FieldManager mod I am presenting in this post is aimed at reducing micro-management on fields. Official mod page on GitLab here.

    The mod has been around for a while and I see players on the lobby already using it. I was hesitant to announce it on the forum, for I wished to come up with more functionalities but... I couldn't :) so here it is! Despite its ostentatious name, the mod provides few but useful features:

    • Select military/non-military/all gatherers from selected fields.
    • Select one gatherer from each selected field.
    • Evenly distribute gatherers across selected fields.

    Here's a screenshot of the commands available when selecting a number of fields:

    FieldManager.png.01605567b23cf5f9aad9d9f001ff6fb9.png

    Be aware that...

    This mod executes automated actions. This can be considered as a cheat. When you play a game with this mod, make sure other players are aware you are using this mod and agree.

    Installation

    Click here to download the latest release. Install following the official 0 A.D. guide: How to install mods?

    Alternative downloads: Latest Release (.pyromod) | Latest Release (.zip) | Older Releases

    Contribute

    The public repository is at this page. Everybody is very welcome to contribute, suggest, fork or simply give feedback. Have fun!

     

    • Like 7
  13. The local.cfg file must be placed in the same folder as the user.cfg file. Therefore, look for user.cfg in your system.

    On a typical GNU/Linux installation, the user.cfg file is in ~/.config/0ad/config, but since yours is a snap installation, I have no clue where to find it. I'm sure you will easily find it with a file search. Surely though, the folder in which user.cfg is placed is not the same of default.cfg.

    Remember that default.cfg is not supposed to be changed. You will only use it to look at all the possible configurable options, and copy-paste from it to your local.cfg, but don't modify it.

  14. I hope this post can clarify things a bit more. There are at least three options to change hotkeys.

    Option A

    Open 0 A.D., then open the Settings > Hotkeys menu. Change hotkeys from there.

    Note: @gui456wSERTDYF I know you are already aware of this solution, but I report it for completeness. This solution can be ok for replacing few hotkeys, but not suitable for changing many hotkeys. For example, this is not ideal for @gui456wSERTDYF's issue (replacing "Ctrl" everywhere).

    Option B

    Look at the default.cfg file present on your computer: this file should look like this. Each line identifies a configuration option. Just to make one concrete example, the default hotkey for attackmove can be found under the [hotkey.session] section in the default.cfg file:

    [hotkey.session]
    attackmove = Ctrl            ; Modifier to attackmove when clicking on a point

    I you wish to rebind attackmove, say for instance to CapsLock, add this line to your user.cfg file:

    hotkey.session.attackmove = "CapsLock"

    Option C (recommended)

    Very similar to Option B. Following the above example, if you want to rebind attackmove to CapsLock (again, as an example), add these lines to your local.cfg file:

    [hotkey.session]
    attackmove = CapsLock            ; Modifier to attackmove when clicking on a point

    The local.cfg file lies in the same folder as the user.cfg file; it possibly doesn't exists: if so, create it.

    The local.cfg file has the same structure of the default.cfg file. In principle, you can copy-paste everything you want from default.cfg into local.cfg and tweak the values at your own needs.

    Note: this solution is probably the one @gui456wSERTDYF is looking for. You can copy-paste all the default.cfg content that includes "Ctrl" into local.cfg and replace the "Ctrl" occurrencies with the key you like. Remember to include the section names (in the above example, the section name is [hotkey.session]).

    Option D (not 0 A.D.-related but OS-related)

    @gui456wSERTDYF if your Ctrl key is not working... have you considered assigning Ctrl to a different key system-wide? In many operating systems (and certainly in the GNU/Linux ones) you can assign Ctrl to other keys, for example to CapsLock.

    • Like 1
×
×
  • Create New...