CuCuGS (Implementation of @f1rpo's CuCu-GS-PoC) in AdvCiv-SAS - #19
Open
wonderingabout wants to merge 14 commits into
Open
CuCuGS (Implementation of @f1rpo's CuCu-GS-PoC) in AdvCiv-SAS#19wonderingabout wants to merge 14 commits into
wonderingabout wants to merge 14 commits into
Conversation
…ityAI + update 48 civs DLL - "<!-- custom: use this pattern i found somewhere in the code, in case it is safer, and cache repetitive calls for performance optimization. Note: also cache GET_TEAM(getTeam()) to kTeam. Note 2: we had issues in the past in AdvCiv-SAS when caching these to a CvTeam cast (i don't know too much about these, check if accurate), that were solved using a CvTeamAI cast rather, so preferring this whenever it seems safe enough (check if accurate). I applied this to all GET_TEAM calls i spotted in this file +/- additional kOwner or kPlayer extra caching when needed, and after specifically testing this in autoplay, we get the exact same outcome vs before (t341 win, exact same score at scores it seems as well, so this also looks good to merge) -->" - update 48 civs DLL - update docs
…n one commit Based on: - https://forums.civfanatics.com/threads/replacing-the-custom-game-screen-proof-of-concept.670307/?utm_source=chatgpt.com - https://github.com/f1rpo/CuCuGS-PoC/compare/6ef8c443795c8566442b1b66ebd1703ac7ff4e24...main.patch (with the rubbish DLL removed in my file)
… change no longer requires to start a custom game and return to main menu and start a new cusotm game, now changes dynamically before custom game starts depndeing on map we select
…selection with random support rarely buggy for some reason weirdly, but mostly works if exiting the game or current custom game window or such
- Added DLL wrapper functions (getVictory/setVictory) in CyInitCore for Python access - Modified CvInitCore to preserve victory settings through resetGame() calls - Implemented victory condition dropdowns with Yes/No options for each victory type - Fixed Civ4 widget naming quirk: numbers get stripped from widget names in events - Solution: Use text-based unique IDs (Victory_VICTORY_TIME, Victory_VICTORY_CONQUEST, etc.) - Used dictionary mapping approach inspired by CvExoticForeignAdvisor and Sevopedia patterns - Victory settings now persist correctly and can be changed before game launch - All 6 victory types (Time, Conquest, Domination, Cultural, Space Race, Diplomatic) functional Technical challenges solved: - Widget ID collision when using same name for multiple dropdowns - Number-stripping behavior in Civ4's event system (VictoryDropdown1 → VictoryDropdown) - Event handler registration using dictionary lookup for dynamic widget identification 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
… update docs note: randomization is a bit hacky but it works as intended (we randomize manually since it was hard to do it ourselves from what i understood of Claude code's explanation thanks), later on we may revisit implementing this correctly, but since it works fine no reason to.
wonderingabout
force-pushed
the
tech-rework
branch
3 times, most recently
from
January 2, 2026 06:50
ce78916 to
6b0135c
Compare
…v-SAS into CuCuGS-PoC-claude-code-test
wonderingabout
force-pushed
the
tech-rework
branch
14 times, most recently
from
January 4, 2026 06:50
e1718db to
55a2425
Compare
wonderingabout
force-pushed
the
tech-rework
branch
13 times, most recently
from
January 22, 2026 06:35
c710f6d to
3d62f3c
Compare
wonderingabout
force-pushed
the
tech-rework
branch
4 times, most recently
from
January 30, 2026 04:53
3111892 to
4679093
Compare
wonderingabout
force-pushed
the
tech-rework
branch
12 times, most recently
from
February 3, 2026 12:00
b6d970e to
d9e8051
Compare
Deleted generated text files are available in the commit history if needed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implementation in AdvCiv-SAS of @f1rpo's CuCu-GS-PoC
See for details: https://forums.civfanatics.com/threads/advciv-sas-simple-advanced-strategy.699716/post-16903049

