Activity for Tim Sviridov

  • Tim Sviridov Tim Sviridov created merge request #62 on 7kaa source

    Add Dutch translation, thanks to Jan Miedema

  • Tim Sviridov Tim Sviridov created merge request #61 on 7kaa source

    Town: Fix rebellions caused by auto-tax and auto-grant

  • Tim Sviridov Tim Sviridov created merge request #60 on 7kaa source

    Fix setting of auto-grant and auto-tax levels

  • Tim Sviridov Tim Sviridov created merge request #59 on 7kaa source

    SpyArray: Fix Firm-capturing villagers remaining in Town

  • Tim Sviridov Tim Sviridov modified a comment on merge request #57

    I'm not a fan of coding in more trying. We actually should be getting away from that. I agree that it is not ideal, which is why I said that it is a workaround, for the time being, and the more thorough solution would be to create/update a map of valid lair locations to choose from. That would take quite a bit more work, though. A config option can allow the user to attempt many more rolls for fryhtan lairs anyway, so this is not needed. Yes, the user can set the maximum, but without the above change,...

  • Tim Sviridov Tim Sviridov modified a comment on merge request #57

    I'm not a fan of coding in more trying. We actually should be getting away from that. I agree that it is not ideal, which is why I said that it is a workaround, for the time being, and the more thorough solution would be to create/update a map of valid lair locations to choose from. That would take quite a bit more work, though. A config option can allow the user to attempt many more rolls for fryhtan lairs anyway, so this is not needed. Yes, the user can set the maximum, but without the above change,...

  • Tim Sviridov Tim Sviridov posted a comment on merge request #57

    I'm not a fan of coding in more trying. We actually should be getting away from that. I agree that it is not ideal, which is why I said that it is a workaround, for the time being, and the more thorough solution would be to create/update a map of valid lair locations to choose from. That would take quite a bit more work, though. A config option can allow the user to attempt many more rolls for fryhtan lairs anyway, so this is not needed. Yes, the user can set the maximum, but without the above change,...

  • Tim Sviridov Tim Sviridov created merge request #58 on 7kaa source

    Fix throne purchase crash in multiplayer

  • Tim Sviridov Tim Sviridov created merge request #57 on 7kaa source

    Control Fryhtan lair generation with config.txt options

  • Tim Sviridov Tim Sviridov modified a comment on merge request #54

    This is not a double free, but a use-after-free. This is happening every time the user disbands via the UI. In almost every case, this code will be executed without pause on the CPU, so the use-after-free will not lead to a crash or unexpected behaviour, as the memory in question will not yet have been altered. I have some saves which have corrupted data for Markets; but I do not know the source of the corruption or whether it came from this memory violation specifically. EDIT: I just looked at what...

  • Tim Sviridov Tim Sviridov modified a comment on merge request #53

    I pushed the new commit previously (33add0d4). If you are looking at it through SourceForge's interface, I assume that the reason that it does not show the new commit or an option to update is because the MR is marked as rejected already. The refactor I was talking about, by the way, was to at least move all is-this-buildable checks to one function and call it from the various disparate places.

  • Tim Sviridov Tim Sviridov posted a comment on merge request #53

    Actually, I just realised a great use-case for this bug, so maybe let's not actually fix it.

  • Tim Sviridov Tim Sviridov modified a comment on merge request #54

    This is not a double free, but a use-after-free. This is happening every time the user disbands via the UI. In almost every case, this code will be executed without pause on the CPU, so the use-after-free will not lead to a crash or unexpected behaviour, as the memory in question will not yet have been altered. I have some saves which have corrupted data for Markets; but I do not know the source of the corruption or whether it came from this memory violation specifically. EDIT: I just looked at what...

  • Tim Sviridov Tim Sviridov modified a comment on merge request #54

    This is not a double free, but a use-after-free. This is happening every time the user disbands via the UI. In almost every case, this code will be executed without pause on the CPU, so the use-after-free will not lead to a crash or unexpected behaviour, as the memory in question will not yet have been altered. I have some saves which have corrupted data for Markets; but I do not know the source of the corruption or whether it came from this memory violation specifically. EDIT: I just looked at what...

  • Tim Sviridov Tim Sviridov posted a comment on merge request #54

    This is not a double free, but a use-after-free. This is happening every time the user disbands via the UI. In almost every case, this code will be executed without pause on the CPU, so the use-after-free will not lead to a crash or unexpected behaviour, as the memory in question will not yet have been altered. I have some saves which have corrupted data for Markets; but I do not know the source of the corruption or whether it came from this memory violation specifically. However, it is still a memory...

  • Tim Sviridov Tim Sviridov posted a comment on merge request #46

    Yes, it is calculating a checksum and this is almost always expected to overflow. The concern is that in C++, signed integer overflow is undefined, and different compilers, compiler versions, systems, and hardware are free to implement the behaviour they wish. This is a potential risk that should be closed up. Unsigned integer overflow is well-defined in C++, and so the solution here is to used unsigned integers. In fact, the actual usage of check_sum()'s return value is indeed in an unsigned integer,...

  • Tim Sviridov Tim Sviridov posted a comment on merge request #53

    I pushed the new commit previously (33add0d4). If you are looking at it through SourceForge's interface, I assume that the reason that it does not show the new commit or an option to update is because the MR is marked as rejected already.

  • Tim Sviridov Tim Sviridov modified a comment on merge request #53

    Found the issue. I was too aggressive when I was cleaning up the change and took out too many parentheses. When I have the time, I can refactor the un/buildable code.

  • Tim Sviridov Tim Sviridov posted a comment on merge request #53

    Found the issue. I was too aggressive when I was cleaning up the change and took out too many parentheses.

  • Tim Sviridov Tim Sviridov posted a comment on merge request #54

    It can be triggered by disbanding a unit (having a unit selected and clicking the cross in the info pane to the left of the healthbar).

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov posted a comment on merge request #49

    Yeah, using std::string is even better. I like that.

  • Tim Sviridov Tim Sviridov created merge request #56 on 7kaa source

    Sys: Make Steal Reports spy escape chance smooth

  • Tim Sviridov Tim Sviridov created merge request #55 on 7kaa source

    Prevent buildings on different islands linking to each other

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov created merge request #54 on 7kaa source

    Fix use-after-free after disbanding a unit

  • Tim Sviridov Tim Sviridov created merge request #53 on 7kaa source

    Fix disappearing builder bug

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov posted a comment on merge request #52

    That is pretty cool indeed. If we can support DOS, then that should cover pretty much any practicable platform. (Old PCs, I mean. Obviously not consoles.) I did see, though, that that PR said that sound, multiplayer, and text input didn't work. Do you know whether they managed to work that out? As for the standard, in general, if considering putting in a restriction, it is easier to put the restriction in earlier and then remove it than rewrite code to fit a restriction later. At any rate, we have...

  • Tim Sviridov Tim Sviridov created merge request #52 on 7kaa source

    Enforce C++03

  • Tim Sviridov Tim Sviridov created merge request #51 on 7kaa source

    Fix desync when built with gcc 14

  • Tim Sviridov Tim Sviridov created ticket #5

    Upgrade to gcc 14 and do a new release

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov created merge request #50 on 7kaa source

    Fix builders blocking construction of Harbours

  • Tim Sviridov Tim Sviridov created merge request #49 on 7kaa source

    Scenarios: Fix double-free crash after playing a scenario

  • Tim Sviridov Tim Sviridov created merge request #48 on 7kaa source

    Unit: Fix KEYEVENT_OBJECT_NEXT selecting units in fog of war

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov created merge request #47 on 7kaa source

    Code cleanup

  • Tim Sviridov Tim Sviridov created merge request #46 on 7kaa source

    Misc: Fix checksum calculation signed integer overflow

  • Tim Sviridov Tim Sviridov created ticket #26964

    Recommended Projects

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov created merge request #45 on 7kaa source

    Fix steal reports escape chance

  • Tim Sviridov Tim Sviridov created merge request #44 on 7kaa source

    Display news when a firm or town is attacked

  • Tim Sviridov Tim Sviridov created merge request #43 on 7kaa source

    Fix grammar in Desperate Bowmen scenario description

  • Tim Sviridov Tim Sviridov created merge request #42 on 7kaa source

    Town: Fix training button artefacts and size

  • Tim Sviridov Tim Sviridov created merge request #41 on 7kaa source

    Remove MAX_BRIBE_AMOUNT redefinition

  • Tim Sviridov Tim Sviridov posted a comment on merge request #39

    The compiler is behaving correctly. See here for more details. However, I see that it is only in C++20, so unless you're using a newer standard, you may not see this warning. Still, the reason for the deprecation in the standard is because this used to be error-prone behaviour, and if the code were to be compiled on a newer standard, it would warn and eventually error out. As this change does not otherwise substantially affect the code (and I would argue that it makes more sense for it all to be...

  • Tim Sviridov Tim Sviridov created merge request #39 on 7kaa source

    Fix enum arithmetic warning

  • Tim Sviridov Tim Sviridov created merge request #38 on 7kaa source

    Keep correct spy loyalty when dropping spy identity

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov modified a wiki page

    Post-game Feedback

  • Tim Sviridov Tim Sviridov posted a comment on merge request #36

    Ah, interesting that sending a unit into a different-skilled building should not have been the case to begin with. I found it very annoying when I discovered this by accidentally sending units to the wrong building and losing their skills. However, there is one situation, I think, where this is actually useful—spies. You can send a spy into a Fort to train up a bit of combat, then directly into another building to train up a civilian skill, to be able to have a spy that, to a human, looks more like...

  • Tim Sviridov Tim Sviridov created merge request #36 on 7kaa source

    Firm: Reset Worker skill potential and experience when changing skills

  • Tim Sviridov Tim Sviridov created merge request #35 on 7kaa source

    Firm: Preserve skill experience when entering buildings

  • Tim Sviridov Tim Sviridov posted a comment on merge request #31

    Snow and Badlands do have blocking tiles, but each to their own style. Am I missing something, then? I generated a few maps on Badlands (see seeds below), looked around by trying to build a fort, and could not find any blocking dirt or rocks, only trees. Oh, there are the ones that look like cliffs. But the ones that look like rocks do not block. 2054313337 Medium 2054311241 Medium 2054309449 Medium 2054308665 Large 2054307833 Small 2054307273 Large Actually, on that last one (2054307273 Large) there...

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov posted a comment on merge request #31

    Hm, okay. I had a quick look at Snow and Badlands (I generated a map and looked around), and it looks like they don't have any blocking dirt or rocks at all. Ideally, I would say that they too should have blocking terrain—especially since a lot of them look like they should block—but since it's always been that way, it would probably be best to leave it as is, as players already have a certain expectation. In fact, if there are actually any rare ones that do block in Snow or Badlands, I think they...

  • Tim Sviridov Tim Sviridov created merge request #34 on 7kaa source

    Fix warning about string constants

  • Tim Sviridov Tim Sviridov updated merge request #10

    Distinguish hit bars of own units from enemies'

  • Tim Sviridov Tim Sviridov modified a comment on merge request #31

    This tile has already been used and changing to block will simply cause issue in any existing scenario. Luckily, it turns out that dirt, rocks, blocked tiles, etc. all get written to the map, so it will not affect any existing maps, only new maps that get generated. In a stretch, if I were going to fix this, then you swap out the rock image for something that looks like it wouldn't be blocking, preserving the intent of that entry. Because of the above, we can actually change the stats of the rocks...

  • Tim Sviridov Tim Sviridov modified a comment on merge request #31

    This tile has already been used and changing to block will simply cause issue in any existing scenario. Luckily, it turns out that dirt, rocks, blocked tiles, etc. all get written to the map, so it will not affect any existing maps, only new maps that get generated. In a stretch, if I were going to fix this, then you swap out the rock image for something that looks like it wouldn't be blocking, preserving the intent of that entry. Because of the above, we can actually change the stats of the rocks...

  • Tim Sviridov Tim Sviridov posted a comment on merge request #31

    This tile has already been used and changing to block will simply cause issue in any existing scenario. Luckily, it turns out that dirt, rocks, blocked tiles, etc. all get written to the map, so it will not affect any existing maps, only new maps that get generated. In a stretch, if I were going to fix this, then you swap out the rock image for something that looks like it wouldn't be blocking, preserving the intent of that entry. Because of the above, we can actually change the stats of the rocks...

  • Tim Sviridov Tim Sviridov posted a comment on merge request #33

    Do you mean BUTTON_ACTION_WIDTH and BUTTON_ACTION_HEIGHT? I did not want to update them directly, as they are used in a lot of places and would have caused a lot of things to move around. Though, if you have the time to check and update each use, it is the cleaner solution.

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov modified a wiki page

    Home

  • Tim Sviridov Tim Sviridov modified a wiki page

    Home

  • Tim Sviridov Tim Sviridov created merge request #33 on 7kaa source

    Button3D: Fix back buffer artefacts from disabled buttons

  • Tim Sviridov Tim Sviridov modified a wiki page

    Post-game Feedback

  • Tim Sviridov Tim Sviridov created merge request #32 on 7kaa source

    Camp: Fix soldiers in camps not getting paid

  • Tim Sviridov Tim Sviridov modified a wiki page

    Post-game Feedback

  • Tim Sviridov Tim Sviridov created merge request #31 on 7kaa source

    Fix Rocks blocking and not blocking building in unexpected ways

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov posted a comment on merge request #29

    Yeah, I am happy to fix it. Previously, you said that you wanted to leave things as they were rather than fix them, so I have not been putting in PRs that end up changing things while fixing them. (Hence this one, which does not change the existing behaviour.) As I said, though, fixing this properly has balance implications—and, as you said, speed ones too. It will probably also have weird implications for loading saved games.

  • Tim Sviridov Tim Sviridov created merge request #30 on 7kaa source

    Town: Actually spawn More (15) and Many (30) towns

  • Tim Sviridov Tim Sviridov created merge request #29 on 7kaa source

    Fix GAME_FRAMES_PER_DAY being the incorrect value

  • Tim Sviridov Tim Sviridov created merge request #28 on 7kaa source

    Firm: Fix units losing their skill potentials

  • Tim Sviridov Tim Sviridov created merge request #27 on 7kaa source

    Camp: Fix high-potential soldiers gaining less leadership

  • Tim Sviridov Tim Sviridov created merge request #26 on 7kaa source

    Firm: Use same types for Worker values as Units

  • Tim Sviridov Tim Sviridov posted a comment on merge request #25

    I had a look at 3900cf60, and it is similar to what I did initially. The issue with that is that war machines are counted when they are commanded by a leader (the misnamed unitPtr->commanded_soldier_count()) and not counted otherwise (unitPtr->skill.skill_id != SKILL_LEADING). As I alluded to earlier, it is not very straightforward, which is why I thought it best to remove the incorrect amount and later implement something proper.

  • Tim Sviridov Tim Sviridov posted a comment on merge request #25

    I understand, it is a number that doesn't match what it says. But it can be fixed though. Which I did. What did you end up doing with it? I looked at trying to fix it, and it's possible to filter out all the builders, caravans, etc., but then the question becomes: do you include the war machines as "soldiers"? Also, I just realised, but have not checked, that Seat of Power worshippers might be getting counted in the "Total Soldiers Under Command" amount. And war machines are certainly being counted....

  • Tim Sviridov Tim Sviridov created merge request #25 on 7kaa source

    Remove misleading total soldiers from military report

  • Tim Sviridov Tim Sviridov created merge request #24 on 7kaa source

    Remove unused code in military report

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov modified a wiki page

    Modes

  • Tim Sviridov Tim Sviridov modified a wiki page

    Post-game Feedback

  • Tim Sviridov Tim Sviridov modified a wiki page

    Post-game Feedback

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov created merge request #23 on 7kaa source

    VgaBuf: Fix pixel artefact bars at the bottom of pictures

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov created merge request #22 on 7kaa source

    Fix pixel artefact on text update

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov modified a blog post

    First Big Release — v3.1.0

  • Tim Sviridov Tim Sviridov modified a blog post

    First Big Release — v3.1.0

  • Tim Sviridov Tim Sviridov modified a blog post

    First Big Release — v3.1.0

  • Tim Sviridov Tim Sviridov created a blog post

    First Big Release — v3.1.0

  • Tim Sviridov Tim Sviridov modified a wiki page

    Features

  • Tim Sviridov Tim Sviridov created merge request #20 on 7kaa source

    Deduplicate Unit skill increase code

  • Tim Sviridov Tim Sviridov modified a wiki page

    Post-game Feedback

  • Tim Sviridov Tim Sviridov created merge request #19 on 7kaa source

    Town: Fix MSG_TOWN_RECRUIT message sent by Town::recruit()

1 >
MongoDB Logo MongoDB