\

Show HN: Playing LongTurn FreeCiv with Friends

85 points - last Wednesday at 7:01 PM

Source
  • mmcclure

    yesterday at 12:52 AM

        generate_gazette.sh Calls OpenAI to generate "The Civ Chronicle" — an era-appropriate, unreliable wartime newspaper article for each turn.
    
    For a long-running game like this, that's a pretty clever little twist to keep the group engaged. I have extremely low confidence I could convince enough friends to do it with me for long enough to get through a game, but this seems like such a fun idea.

      • verelo

        yesterday at 1:36 AM

        This was a friends suggestion after I initially proposed something that exposed a bit too much detail. I wanted to show the diplomacy states and unit/city additions per player as a highlight on the home page, but we instead kept the raw files that generated those UI elements and fed them into OpenAI with the prompt and the Gazette was born.

        It's a bit verbose honestly (see https://freeciv.andrewmcgrath.info), I welcome pull requests with improved prompting!

        • Gagarin1917

          yesterday at 1:50 AM

          That’s so awesome, I had the exact same idea since LLMs came out because I’m a regular Civ player.

          I thought about trying some kind of mod for Civ IV but never got around to it. FreeCiv does make more sense.

          Very cool stuff.

            • verelo

              yesterday at 1:57 AM

              You can read the code, but my suggestion on how to do this is to just ingest the save game files. They're super easy to work with, especially now we have the magic of LLMs.

              In my case i'm creating various json files that describe game state, players, diplomacy, attendance, etc. Then i just throw that at the LLM and give it the goal of writing a newspaper article about where the game is at. The json files are incremental, so i'm not reading all the past versions on every turn. At the end of the current turn it just appends the current turn data to the json file, and then does the generation. These files are also what power the frontend UI, so it's all super lightweight and fast.

              To make the graphs, you need to know state at the end of the current turn as the save files don't retain any history. So i store the most recent save file from each turn in order to achieve this.

              It's been a journey of reverse engineering this game, but that's kind of the joy of it all.

      • GNOMES

        last Wednesday at 8:18 PM

        This sounds amazing. Hard to wrangle friends together to play a game, so giving a full day is great.

        Ignoring Civ 2 vs Civ 5 differences, any experiancing hosting Unciv vs Freeciv?

        https://github.com/freeciv/freeciv

        https://github.com/yairm210/unciv

          • verelo

            last Wednesday at 8:20 PM

            I've never run Unciv! First i'm hearing of it honestly. I'll have to check it out.

            I can say from this experience, the first 24-72 hours of the game was people just complaining in our group chat that the FreeCiv client sucks (it really does). I'm very tempted to jump in and make a few improvements, there's a really awful bug that impacts the ability to move stacked units - and if the diplomacy state changes while units are in the territory of a previous ally, they are unable to move whereas in Civ2 (legit Civ) they just get auto-pushed back to the borders immediately.

              • karmakurtisaani

                last Wednesday at 8:30 PM

                > whereas in Civ2 (legit Civ) they just get auto-pushed back to the borders immediatly.

                Maybe you're thinking Civ 3? Civ 2 doesn't have borders. If you have units close to other civ's city, they will demand you to withdraw. If you agree, they're teleported to your nearest city.

                  • verelo

                    last Wednesday at 8:32 PM

                    ah yes you're right! Regardless, i don't think they're mean to get stuck haha. The more offensive element of this issue to me is that the UX gives no feedback, it just doesn't work and gives an audible buzz.

                • senkora

                  last Wednesday at 8:33 PM

                  You may know this already, but the different FreeCiv clients are pretty different from each other. It's been a couple of years since I've played FreeCiv, but IIRC the QT client was the nicest at that time.

                    • verelo

                      last Wednesday at 8:38 PM

                      Yeah, so that's another lesson I learnt during the early phases. I've been using the gtk4 client personally, but someone else suggested the QT client. I do think the QT client is a bit better, but it is broken in different ways too.

                      It's really confusing to me why there's so many frontends for this one app. I'm tempted to switch to the web interface next time, but figured for now figuring out how to mange the server was enough of a problem without taking on the responsibility for the client people were using at the same time.

          • peterjmag

            last Wednesday at 10:29 PM

            It’s my first time playing any Civ game ever. I’m currently at the top of the scoreboard for reasons entirely unbeknownst to me. My advice for anyone else considering playing their own game: form an alliance with the server admin.

              • verelo

                last Wednesday at 11:30 PM

                Haha, you’re just a natural.

            • mister_mort

              yesterday at 2:53 AM

              Managing to recreate Pitboss mode is a neat achievement.

              How do you handle the turn time creep problem? If people complete their turns and the game moves to the next 24 hour bloc after the last player submits, the submission window creeps earlier in the day until the deadline until it gets too early for one or more players and they miss a turn. Or do you not immediately process the turns and always stick to the 24H time period even if you have all players?

                • verelo

                  yesterday at 12:16 PM

                  That's OK...Everyone gets an email saying the next turn is ready, and the 23 hour window begins. Picking 23 hour turns was intentional so that theres never the expectation that turns would end at the same time as to not bias favour towards any particular player over the course of the game.

              • stavros

                yesterday at 10:42 AM

                I want to do something like this for work, except instead of Civ it's discussing a topic, and instead of Civ it's email. Unfortunately, everyone seems addicted to Slack, as it minimises the time it takes for everyone to misunderstand each other.

                • tagami

                  yesterday at 1:21 AM

                  Our goto is Civ VI where we play an age every few days. Start game we can usually get 2 ages in, end game 1/2 age or less. Game time is usually 60-90 min

                    • tasuki

                      yesterday at 8:47 PM

                      What does "play an age every few days" mean? I played Civ VI many years ago and remember it took a lot longer than 60-90 minutes. I never played multiplayer. How does it work?

                  • wieder_fi

                    yesterday at 6:02 PM

                    Is this similar gameplay to longturn.net Freeciv with 25h turns? I would guess guess it is. Longturn has a fork of the Freeciv client, available from Github. There are some improvements to the UI and other things, including rulesets for longturn type of games. Might give some ideas for improving stuff.

                      • verelo

                        today at 3:10 AM

                        Thanks for mentioning longturn.net, honestly, didn't know it existed before you mentioned it here. I'm going to check out their repo, if the client is improved that'd be very interesting.

                    • u3125

                      yesterday at 1:31 AM

                      This reminds me of Neptune’s Pride, a turn based strategy game where time in-game is real-world time. Turns take a very long time.

                      My friends and I played for a while. The first week was a blast, the second week was fun, but week three felt like a chore and we all lost interest.

                        • glenpierce

                          yesterday at 5:24 AM

                          That was such a great game!

                      • jonathanlydall

                        yesterday at 5:08 AM

                        Time for all players wasn’t the only issue with multiplayer when I tried a while back with Civ 4 and a couple of my brothers. We never even got to thinking it’s taking too long before a desync error would occur.

                          • verelo

                            yesterday at 12:16 PM

                            Oh i forgot about that! Yeah, the beauty of being able to disconnect and reconnect with backups taken every 5 mins from the server.

                        • verelo

                          last Wednesday at 8:23 PM

                          Link to the live demo site where you can see what this code does (aside from running the actual server): https://freeciv.andrewmcgrath.info

                            • algo_trader

                              last Wednesday at 9:24 PM

                              > for longturn games (23-hour turns)

                              Why 23 hours? Is this a typo?

                                • verelo

                                  last Wednesday at 10:11 PM

                                  Great question, it's not a typo. Making it 23 hours, it means the 'turn end' is constantly moving and never the same time of day.

                                  The logic here is that we have players that are in Toronto Canada, Portland (Oregon) USA, Newcastle Australia and Berlin Germany. If we put the time at 24 hours, it would mean the turns are scheduled to end approximately the same time every day which introduces potential advantages / disadvantages to certain players.

                          • tasuki

                            last Wednesday at 7:56 PM

                            Very smooth looking, I attempted to sign up!

                              • verelo

                                last Wednesday at 8:10 PM

                                haha, we're at turn 9, but if you want to join the next game let me know. Happy to add others! There's a chance there might be appetite to start a simultaneous game if a few people get knocked out early.

                            • ivanjermakov

                              last Wednesday at 8:14 PM

                              Any reason for such a long turn timeout?

                                • verelo

                                  last Wednesday at 8:16 PM

                                  LongTurn (~24 hour) format has been something I've been interested in for a while. It means people can casually commit, without it taking over their life.

                                  An interesting observation another friend made the other day was that this adds oxygen to the room. We have a WhatsApp channel with all the players in it, and at this point most of the 'action' is the conversation in WhatsApp. It's a pretty diverse array of people in there too, many who know me, but do not know each other.

                                  It's a weird little community, just for fun.

                                  • busterarm

                                    last Wednesday at 8:24 PM

                                    You know people used to play games of chess sending their moves via postcard, right?

                                    Like it was popular.

                                      • conception

                                        last Wednesday at 11:18 PM

                                        They do. But they used to too.

                                • busterarm

                                  last Wednesday at 8:15 PM

                                  This style of play is really underrated.

                                  I used to play a half-dozen or so games of Diplomacy at time with daily turns for years.

                                  There are still modern games that take advantage of this idea (my friends have been playing Old World like this recently) but I'd like to see it more.

                                    • herewulf

                                      today at 1:45 AM

                                      There were a bunch of 90s BBS games that worked like this. All the players had so many "turns" (maybe better described as "action points") which they could use for different activities in a given game. They reset each day.

                                      It was more of a mechanism to keep connections shorter because most BBSes only had a few phone lines, or even just one, so the number of simultaneous users was extremely limited.

                                        • throwaway290

                                          today at 1:59 AM

                                          There are games online that work like that today

                                      • dwd

                                        yesterday at 12:24 AM

                                        Used to play a multi-player Lords of Midnight (the Spectrum/C64 game) where each player (up to 8) made their moves in turn. The original used a day/night turn-based system, so using that for 2-8 humans made sense.

                                        It actually improved on the original by introducing new maps, which probably helped players unfamiliar with the original game who could probably draw the map from memory.

                                        Games could often stall where a real-life didn't allow a player time to make their moves.

                                        • verelo

                                          last Wednesday at 8:27 PM

                                          Yeah! I cannot for the life of me remember the game but I used to play this space nation builder type game around 2004-2007...i was so invested. Then i found out the game resets every ~year. Wow that was a sad morning when i woke up to find out I came 50,000th or something haha.

                                            • herewulf

                                              today at 1:39 AM

                                              EVE Online? I never played it myself, just know of it.

                                                • verelo

                                                  today at 3:11 AM

                                                  I don't think it was EVE, but i did play a little bit of that for a while. It's funny that we played these more as kids and less as adults, i feel like as an adult this kind of game is more my tempo.

                                      • crimsoneer

                                        yesterday at 1:33 PM

                                        Reminder that everyone should be playing Solium Infernum with their friends

                                          • verelo

                                            today at 3:12 AM

                                            Looks scary. Anything in particular you like about it?

                                        • accesspatchh

                                          yesterday at 1:05 AM

                                          [dead]

                                          • xallower74

                                            yesterday at 1:17 AM

                                            [dead]

                                            • davidliu847386

                                              yesterday at 6:19 AM

                                              [dead]

                                              • inikitin69

                                                yesterday at 4:39 AM

                                                [dead]

                                                • ttbigroad94

                                                  yesterday at 12:56 AM

                                                  [dead]

                                                  • AliEveryHour16

                                                    yesterday at 9:01 AM

                                                    [dead]

                                                    • Rager69

                                                      yesterday at 8:40 AM

                                                      [dead]