1. Firaxis celebrates the "Asian American and Pacific Islander Heritage Month", and offers a give-away of a Civ6 anthology copy (5 in total)! For all the details, please check the thread here. .
    Dismiss Notice
  2. Old World has finally been released on GOG and Steam, besides also being available in the Epic store . Come to our Old World forum and discuss with us!
    Dismiss Notice

Project Resources

Discussion in 'Civ3 Future Development' started by WildWeazel, Jan 14, 2021.

  1. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
    I intend this to mostly be a reference post, but if you have any other important links post 'em below

    Compiled information
    Spoiler :

    Godot

    C#/programming

    Engineering & game design process

    Software architecture

    Tools & resources

    Case studies

    Other Civ projects

    Other open-source projects
     
    Last edited: Dec 16, 2021
  2. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
  3. Vuldacon

    Vuldacon Dedicated to Excellence Supporter

    Joined:
    Nov 14, 2001
    Messages:
    7,025
    Gender:
    Male
    Location:
    USA
    Well, sit back with a cup of coffee and contemplate what is being conveyed as you read it. Then ponder your own creative ideas.

    Worth the read and a Very Good analysis that is certainly informative and applicable to 4X.
     
  4. Ozymandias

    Ozymandias Archivist, redux Supporter

    Joined:
    Nov 5, 2001
    Messages:
    10,133
    Gender:
    Male
    Location:
    The lone and level sands
    My apologies for my "absence," but Real Life has the annoying habit of, well, being "Real."

    @WildWeazel -At first glance, it does look interesting ... Especially as I fondly recall playing both his stunningly "elegant with simple rules" House Divided to his all-but-overwhelming intricate Totaler Krieg.

    From the amazingly still around Decision Games site, on, "What Is Wargaming?" he wrote:

    Any wargame is going to be a compromise. A designer can not put everything into a game without turning it into an unplayable mess. Many things are abstracted or otherwise subsumed into various game systems. For example, logistics, intelligence operations, and command control may not receive the detail which goes into modeling maneuver forces and resolution of combat. Actually, this is not as unrealistic as it may appear. In reality, a commander will have a staff and subordinates to assist him in running the show, whether it’s a continental level campaign or a small unit action. To paraphrase Frederick the Great, “The wargame which simulates everything simulates nothing”.

    So I now get to agree with both Alan Emrich -AND- Frederick the Great :king:

    ... In the meantime, now you also have me reading up on, "Library Vs Framework Vs Engine," etc. ... :crazyeye:
     
    WildWeazel likes this.
  5. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
    Anyone wanting to pick up Godot or just learn about game engines: here's a large index of tutorials, both text and video. Godot is under active development, so beware of dated information. The latest stable version is 3.2.3, and Steam is the easiest way to get it.
     
    Puppeteer likes this.
  6. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
    This probably isn't anything we don't know already, but I came across this utility on Reddit that reads the event history from a SAV and renders it similar to the end-game replay.
    https://github.com/lucienmaloney/civ3mapreplay
     
  7. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
    I've found some relevant Discord servers if you're into that. These are all pretty active. I've been pleasantly surprised by the mod community outside of CFC (though Takhisis and I are gradually bringing them into the fold)
    --
    merged into #8
     
    Last edited: Feb 13, 2022
  8. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
    This is an unfiltered dump of some resources I've saved (I might have a problem...) which may or may not be helpful. Will edit the good ones into OP as we check them out. The Unity stuff I've included is about language features or design, so should mostly apply.

    ---
    WIP reorganization. Some links may be dead, or require Pocket login. Please point them out.


    List of relevant GitHub repos



    Spoiler Software architecture & OO design :

    Game patterns
    C# patterns
    General architecture

    Docs: Refactoring Guru (OO design patterns)


    Spoiler Development process :

    Gamedev
    Article: Production fundamentals (aka project management)
    Ebook: Top 5 game derailing mistakes to avoid
    Agile
    Distributed
    Open source



    Spoiler Godot learning & resources :

    Engine
    Docs: Godot C# Style Guide
    Docs: Godot GDScript Style Guide
    Docs: Godot Beginner's Guide (unofficial)
    Utilities
    Example projects



    Spoiler Programming languages & concepts :


    Spoiler Gamedev tools & resources :


    Spoiler Game case studies & postmortems :




    Spoiler Other open source projects :

    Civ-likes
    Other strategy games





    Architecture

    Design Patterns: The Factory Method Pattern
    The shape of software architecture
    Using software development practices for games: Can MVC/MVVM work?
    Programming 'promises' for game development
    How event-driven architecture solves modern web app problems

    Programming
    RPG tutorial series
    Building C# objects dynamically
    C# Fundamentals Series Introduction - 01
    Best of 2014: C# memory management for Unity developers
    Unity garbage collection tips and tricks
    More C# memory and performance tips for Unity
    Vector Maths for Game Dev Beginners

    Tools & Resources
    13 free tools for remote gamedev
    Guide To Free Game Development 2016 Edition (lol)
    21 free learning resources for game developers
    More C# memory and performance tips for Unity
    Blog: Rules for a future-proof 2D render order
    Blog: Shaders for beginners (with examples in OpenGL and Defold)
    Productivity tips with Odin: A tool for making tools
    3 approaches for procedural world generation
    Procedural generation: More unpredictable stuff
    A list of the best free and affordable game graphics resources
    Using Git Like a Pro: Master-Only Workflow, Branching Strategies, and Hacks

    Process

    When is a User Story “Done?”— Acceptance Criteria and the Definition of “Done”
    Issue tracking and feature planning
    technical game design documentation pt2 pt3
    Using Free and Open Source Tools to Manage Software Quality
    A product manager’s guide to release planning
    How to develop a cross-platform game from the get-go
    Can one person run an open source project alone?
    Feature requirements and game dev: Do they go together?
    11 tips for becoming an indie dev autodidact
    Starting up a game business: Contemplating processes
    A practical guide to writing technical specs
    Continuous Delivery Sounds Great, but Will It Work Here?
    Name Your Thing!
    Test Driven Development (TDD) for the Masses
    Super-powered continuous delivery with Git

    Case Studies

    Blog: Building an RPG battle system, part 1
    Play Early, Play Often: Prototyping Civilization 4 (GDC 2006)
    Playing to Lose: AI and Civilization (GDC 2008)
    Blog: Strategy game UI dos and don'ts
    Procedurally Generated History: paper by Rhye & Soren Johnson
    Blog: Authoring and extending behavior trees
     
    Last edited: Mar 28, 2022
  9. Puppeteer

    Puppeteer Emperor

    Joined:
    Oct 4, 2003
    Messages:
    1,687
    Location:
    Silverdale, WA, USA
  10. Vuldacon

    Vuldacon Dedicated to Excellence Supporter

    Joined:
    Nov 14, 2001
    Messages:
    7,025
    Gender:
    Male
    Location:
    USA
    WildWeaze... That is a Great List of Resource.

    Puppeteer... I Think Jonathon is creating some Wonderful Terrain Graphics with the procedures he is using.
     
    Puppeteer likes this.
  11. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
  12. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
    and look... more resources
    forgive the sometimes vague titles, as I'm drag-n-dropping these links from various places


    Godot
    Make Your First 2D Game with Godot
    Godot tutorial: Learn the Godot Engine and Create a Platform Game
    Godot Tutorials - List of Video and Written Tutorials
    Awesome Godot
    Dedicated Multiplayer Server
    Godot Open RPG
    Godot Logger

    Architecture
    The Architecture of Open Source Applications
    SOLID Unity3D
    Event Sourcery Full Course
    Writing a Game Engine from Scratch - Part 1: Messaging

    Programming
    Amit’s Game Programming Information
    Game Programming 101
    Complete List of GameFromScratch.com tutorials
    Table of Contents · Game Programming Patterns
    Learn C# by Building a Simple RPG
    C# and Shader Tutorials
    C# in Depth
    Demystifying Attributes, C#'s Under-Utilized Superpower for Game Development
    Dependency Injection in .NET

    Resources & guides
    IndieCiv
    Antal1987 / C3CPatchFramework
    Civ3 Show-And-Tell
    Civ 3 Enhanced Map Replays
    Procedurally Generating Wrapping World Maps in Unity C# – Part 1
    HexMap Library Documentation
    How to Design the Data Structure for a Turn Based Game
    Isometric Depth Sorting for Moving Platforms
    UCompile
    Hex Map
    Civilization VI Fog of War
    What's a way to implement a flexible buff/debuff system?
    Civ-themed music
    Google style guide

    Process
    Solo Indie Dev: What I Wish I Knew Five Months Ago
    Open Source Guides
    Producing Open Source Software

    Game design
    If you were designing a game like Civilization, what game mechanic would you add? (ideally one that reflects some interesting and underused theory)
    How to Tackle Build Micromanagement Tedium in 4X Games?
    3 Minute Game Design (All Episodes)

    Case studies & similar games
    Civilization's past and future as told by its lead designers
    official modding guide for Humankind (Unity)
    Open Source Game Clones
    Sloperama Productions
    Statebuilder
    OpenRA
    Posts Tagged ‘making a space 4X game’
    The History of Civilization
    Chopping Down the Tech Tree: Perspectives of Technological Linearity in God Games, Part One
    Road to Indie: A Paradox(ical) experience
    Designing Civilization VI 's distinctive districts system
    City management, mayhem and Sid Meier's wisdom: Making Civilization VI
    OpenTTD
    Unciv - FOSS Civ V for Android+Desktop
    OpenRA
    0ad
    openage
    freeciv-android
    OpenXcom
    Wesnoth
    CivOne
    MostlyCivilizedHexEngine
    ctp2
    SOSCSRPG
    JRPG
    Shape Of Things That Were
    MaximumCiv
    Civilization
    freeciv
    Freeciv Events Tutorial
    Multiplayer Java rewrite of Simtex's classic game Master of Magic
    awesome gaming
    Games on GitHub
    PocketCiv
    civ2
    VCMI Project
    Open Realm of Stars
     
    Last edited: Jan 30, 2022
  13. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
    MOAR

    Godot
    Ever wished you could link C# events in the inspector? Well, now you can with this plugin!
    I've just released GDScriptify: A magical documentation tool for GDScript
    Whiteboard Software v1.0.1 Released. Made with Godot
    Mad Productivity 0.0.2 released! Bucketloads of changes and open source (MIT)
    Dedicated Multiplayer
    Godot Action RPG Series
    Godot Engine Tutorials
    Godot Mobile RPG
    Making an adventure game
    Tower Defense in Godot
    COMPLETE COURSE - Learn the GODOT Game Engine in 50 MINUTES
    How to Make an Isometric Tilemap Godot Tutorial 3.2
    Design and Code a Title Screen in Godot 3 (tutorial)
    GodotCon Online January 2021
    Godot Engine Tutorials
    awesome-godot
    godot-gdhexgrid
    godot-awesome-splash
    LegendsOfMajesticSteel

    Architecture & programming
    The System Design Primer
    .NET Architecture Guides
    Clean Code : Uncle Bob : all lessons
    Awesome Software Architecture
    I summarized the book, which is essential for every developer, "Clean Architecture" by Robert C. "Uncle Bob" Martin
    Game Programming Patterns
    HTL Leonding C# Course 2020/21
    programming-principles
    CSharp-From-Zero-To-Hero
    awesome-ddd
    Stringly.Typed
    MediatR
    awesome-software-architecture
    awesome-software-architecture

    Process
    The only way to go fast, is to go well (TDD from Factorio)
    I have been struggling for years to make my dream game, until now...
    700,000 lines of code, 20 years, and one developer: How Dwarf Fortress is built

    Game design
    YouTube channels related to game design (recommendations)
    Sid Meier and the Meaning of “Civilization” How one video game tells the story of an industry.
    A Civilization 3 Retrospective

    Open source
    odin-serializer
    OpenSAGE
    OpenSpace4x

    stars-nova
    awesome-dotnet
    awesome-dotnet-core
    awesome-dotnet-core-applications
    Civ2-clone
     
  14. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
    And finally, some other communities where we can find help, or maybe later on, helpers!
    --
    merged into #8
     
    Last edited: Feb 13, 2022
  15. Lanzelot

    Lanzelot Moderator Moderator

    Joined:
    Jun 25, 2007
    Messages:
    5,937
    Location:
    Heidelberg
    I thought, it might be a good idea to read this, but it gives me a 404?!
     
  16. WildWeazel

    WildWeazel Carthago Creanda Est

    Joined:
    Jul 14, 2003
    Messages:
    7,206
    Location:
    %CIV3%\Conquests\Scenarios\
    Ugh. These are bookmarks that I've accumulated over a long time, so there may be some broken links. I just copied them all over without checking.
     
  17. Quintillus

    Quintillus Archiving Civ3 Content Supporter

    Joined:
    Mar 17, 2007
    Messages:
    7,166
    Location:
    Ohio
    Pretty sure I found it. Turns out it's a presentation rather than an article.

    Video of that presentation:
    Transcript: https://academy.realm.io/posts/360andev-savvas-dalkitsis-using-git-like-a-pro/

    DuckDuckGo to the rescue - especially since the Internet Archive didn't have a copy.

    So far I've been waiting for the filtered list as I'm more of a discover-things-as-I-go-through-experimentation-and-reading-official-docs-when-needed person than a read-a-bunch-about-something-first person, unless it's exceptionally good material.

    Nonetheless, I did tend to bookmark a lot of links for a few years... enough that my bookmarks are kind of useless due to their number and fairly disorganized state. But I never ran out of them so I kept bookmarking! So I can commiserate with having tons of at-one-point-or-another-useful links and organizing them being the difficult part. My Civilization resource folder on my hard drive is also somewhat disorganized, although in somewhat better shape than my bookmarks.
     
  18. Plotinus

    Plotinus Philosopher Super Moderator

    Joined:
    Nov 14, 2003
    Messages:
    16,861
    Location:
    Somerset
    Ha, maybe if you wish hard enough!

    I’m thinking I might just bung all the code up onto GitHub for anyone to tinker with, once I’m done, though much of it is not edifying.

    I’ve also thought it would be interesting to try to make a Civ-style game using my terrain generation as an engine. It would be a challenge to adapt the gameplay from the traditional tile-based map to something more detailed and unpredictable, but maybe that would be half the fun.
     
    Kyriakos and WildWeazel like this.
  19. Vuldacon

    Vuldacon Dedicated to Excellence Supporter

    Joined:
    Nov 14, 2001
    Messages:
    7,025
    Gender:
    Male
    Location:
    USA
    Plotinus!... Great to "see" you... and Yes, your idea would be Fun indeed and I love what you have done with Terrains :goodjob:
     
  20. Ozymandias

    Ozymandias Archivist, redux Supporter

    Joined:
    Nov 5, 2001
    Messages:
    10,133
    Gender:
    Male
    Location:
    The lone and level sands
    @WildWeazel – Many wondrous resource links! Might I ask you to group them into categories reflecting whichever part(s) of game design / game play they reflect?
     

Share This Page