Hacker Newsnew | past | comments | ask | show | jobs | submit | WildWeazel's commentslogin

Hopefully yes, because so far none of us are AI programmers...

but seriously yes everything about the game will be designed for customization


Well, "capabilities" is carrying a lot of weight there. One of the main objectives is to design it for unrestricted modding to accommodate all of the wishlisted features, but "out of the box" the default game mode will be 1:1 in mechanics with some QoL improvements. The inspiration is mostly for designing systems in a way that can be easily reconfigured or extended to behave in other ways. We hope that by the time we reach feature parity, people will have already built some mods to do things that were impossible with Civ3.

As mentioned above this was started by Civ3 modders, and we all have our passionate reasons for preferring it over other entries, but you're not wrong that doing this with a 3D engine would be a whole `nother ballgame. There are actually Civ4 and Civ5 remakes underway which have both opted for 2D implementations.


tbh that's a civ rite of passage

Mac support is the bane of my existence. It doesn't help that none of us core contributors have one, so if anyone is willing to be a lab monkey...

Apple has been slowly tightening the screws on app notarization (code signing) requirements for running apps on macOS. To do it properly you need to be a registered developer ($100/year), and they're certainly not making it easy if you don't have access to a Mac.

https://support.apple.com/guide/security/app-code-signing-pr...

> On devices with macOS 10.15, all apps distributed outside the App Store must be signed by the developer using an Apple-issued Developer ID certificate (combined with a private key) and notarized by Apple to run under the default Gatekeeper settings.

Re: Developer ID Certificates: https://developer.apple.com/help/account/certificates/create...

I suspect the friction that users are facing are due to dodging the above requirements.


The whole sdk has a restriction that you can't use it off platform. The code signing thing is just a tax on ios devs

You need an apple ID. You cannot create one without using an apple device.

You can absolutely make an appleID without an Apple device. You can make one in-browser right now. https://account.apple.com/account?create

Have you actually tried it? Because I did some months ago to setup an AppleTV and it just does not work. It just hangs at the last step without telling you anything. If you inspect the server response it just says "Your account cannot be created at this time.".

What ultimately helped after weeks of trying and tinkering was installing VMware Workstation, patching it to enable macOS support, create a VM with the specific hardware configuration of an older MacBook, install an old version of macOS and do the 2FA from in there.


Use the link in my comment, it takes you straight to their signup page.

Think of it this way: if you required an apple device in order to make an Apple ID, then literally every single podcaster on Apple podcasts (which is still the dominant app for podcasts) must own an Apple device.


Did you even read what I wrote? It did not work. Apple even has an FAQ page for that error (without any useful solution). The suggestion to create an account via Apple Music app is useless since all it does is create an account which must be migrated via browser first (with the same problem). You can also find large threads on Reddit about the problem. Of course the availability of such a sign-up flow suggests it should be possibly, but having it broken for months is not a good look.

I stand corrected.

Needing an apple device to compile for an apple device is not an unreasonable requirement. Paying $100 every year is.

If you only publish free apps... you only pay $100 once.

No, sorry, but it is unreasonable.. Why should I need an apple device to compile my code for an apple device?

You can build Android apps on an Apple device, no problem. You can build Linux apps on an Apple device, no problem. etc... But the reverse isn't true. Its just more of Apple financially gate keeping their ecosystem so they make more money in as many channels as they possibly can.

Testing on real hardware is the ONLY time I would say that owning, or at least having access to the hardware has real tangible benefits, and I would argue that that you NEED or SHOULD do this.. But to block compiling to that ecosystem? Sorry but I fundamentally disagree.

Blocking compiling, means requiring xcode, which requires a mac, which requires you to give more money to Apple, and is no different IMHO than giving Apple $100 a year, because now you're giving them a lot more of that every X years (where x is how many years that laptop gets updates)


For decades, Microsoft only made Visual C++ for Windows, and alternatives like DJGPP weren't very good. This isn't unreasonable, it's just how programming works when you target a platform. Visual C++ relies on Windows because it's a Windows program, and Xcode is written for MacOS, not for Java or Electron.

What is stopping you from writing an open source alternative to Xcode that runs on Linux?


...The code signing requirement?

Why can't code be signed with open source tools?

I have a Macbook Pro M4 Max, an Apple Developer account, a bit of time, and some enthusiasm. Would love to help!

Notarize it.

You can run macOS in a docker container. There’s no hardware acceleration for gpu, but works well enough.

You can also try macinabox if you have unraid:

https://hub.docker.com/r/spaceinvaderone/macinabox

It’s probably the easiest way of setting up a Mac VM if you have unraid. I know there are similar options for qemu and kvm based hypervisors. If you have an amd gpu you should be able to pass it through.


But you can't distribute whatever you build legally as far as im aware. The apple sdks prevent you from shipping legally.

The only way atm is installing homebrew and using a gnu tool chain if I understand the license of the official sdks correctly?


Tangible thing versus conceptual thing. License never stood a chance.

quickemu [1] is good at running macOS VMs.

1: https://github.com/quickemu-project/quickemu


My only experience with docker is headless in CI. I do have AMD. I'll have to look into this. Thanks

Emulating mac or using mac SDKs on non apple devices is against apple's bullshit license though.

BS needs to be countered with rejection.

Best way to reject it is to ignore macOS.

If Apple finds out they’ll ban your developer certificates and then all installed copies of your app will stop working.

Has this ever happened? Not revoking certificates, which they've certainly done for malware or e.g. iOS "signing services", but because a developer used non-Apple hardware.

I am the dev of Pocket Squadron (https://play.google.com/store/apps/details?id=com.bombsight....) and a few years ago I tried to make a build for iOS due to many player requests. I did not have a mac so I setup a mac VM and a dev account to start making builds and see how big of a lift it would be. My account was banned unfortunately. Still no iOS build to this day, I'm probably missing out on a good bit of money.

Could have just created a new account. As I said, BS needs to e dealt with rejection... rejection of their ban in this case.

I don’t know the answer to that but a quick search shows lots of examples of people complaining that their developer certificate has been revoked, demonstrating a willingness by Apple to revoke certificates if they believe the developer violated their terms of service. I doubt Apple would go out of their way to include language in the agreement that binds developers to their own sanctioned platform if they didn’t intend to enforce it.

I would wager all of those are distributing malware.

I would take that wager. I highly doubt Apple’s revocation team has a 0% false positive rate.

I agree, but I think a better wager (and what GP probably meant) would be that all of these developers had their certificates revoked because Apple thought they were distributing malware. That's what the system is for.

Rather than making people run commands in Terminal, it would be more ideal to just tell people to try to run the app, then go to System Settings -> Privacy & Security -> scroll down until they see the Open Anyway button.

It'll be a skill they can use for any unsigned app and you can have cute screenshots. The Terminal command, on the other hand, is a huge barrier to entry.



I have a MacBook m4 Pro, m3, mac Mini m3, an apple developer account and willing to help.

I volunteer.

Why not build it as a web app and play via browser?

Contact the maintainer of macsourceports. They do exactly what you despise for dozens of projects.

Hi all, OpenCiv3 founder here. Thanks for the support! Check us out on Civfanatics or Discord to keep up with the project.

Any interesting insights about using Godot with C#? I love C# and I'm happy using it in Godot even though it's not as seamless as in Unity: in Godot 4 we still can't export to Web if the project is C#, and there's the whole conversion between C# types and Godot types that adds inefficiencies and extra allocations, etc.; it feels like it's a second-class language in Godot.

I'm always interested in seeing what people find when developing larger projects in C#.


The founding developers were all software engineers with .NET experience, so it was the natural choice even though at the time it was Godot 3.x with Mono. I had used Unity before but not Godot. The project is structured as mostly plain C# DLLs with a relatively thin Godot UI layer controlling it, so the Godot type system is fairly encapsulated. We haven't really seen any issues with those decisions beyond just working out the communication between Godot and DLL. But again we were just working from what we knew so I can't really say if this was the best way to go about it.

We were building on C# Godot and I think it is a second class citizen in the sense that 1) you can't export to wasm and 2) they are moving the interface to be handled by gdextension.

That said, I think once you get the gist of it and understand the landmines, it is really nice to use vanilla dotnet rather than unity's fork.


I have this principle of "5% scripting". If the high level scripting on top of C++ consumes about 5% of frame time, then the language of the script does not matter.

Oh my, this brings me back! One of my fondest gaming memories involves a massive Civilization 3 PBEM match between a number of Civilization fan sites, where we all had private forums and ran these virtual nations against each other. This was way back in 2002 or 2003!

I believe Civfanatics was in it (run by “Chieftess” if I recall), Apolyton (which I was a member of — elected in as Minister of Public Works and had to come up with a plan to clear our pesky jungles) and a number of other sites.

It was such an awesome time. Real diplomacy and trade negotiations between the fan sites while waiting to play our turns. Man, it was fun.


I was also there at Civfanatics watching from the sidelines. Fond memories indeed, and some of those same people laid the foundations for this project.

I didn’t do that stuff but I remember…was it Kryten? Making a multi unit graphic utility, I used it to make and publish some multi units. Fun times. CivFanatics was great.

Good to see you around here! I remember some of your posts way back in the day. I don't recall, did you hang around the civfanatics IRC much back in the day?

Would it be feasible to add an API to OpenCiv3 (or run it as an SDK) so we can script up actions?

There will certainly at least be (technically already is) a Lua scripting interface for mods. We've hand-waved some talk of a proper C# SDK but have no concrete plans yet.

This is great stuff! Civ3 is still by far my favorite Civ. And a nice use of Godot.

Thank you for creating such a badass project.

Have you considered adding LLM features for the negotiations? Could be cool.

From what I've seen with projects like this, the successful ones do a good job of 'sticking to the mission' of faithfully recreating the original game in a modern engine (openMW, daggerfall unity, all my points of reference are TES related)

The neat part is that they are open source, so anyone who wants to take it in a different direction can fork it. The multiplayer version openMW being a great example of this.


you may be interested in https://www.paxhistoria.co/

No information on the website, but a login. Suspicious.


Bizarre that this got YCombinator funding. Not obvious how it scales.

You are getting downvoted, but this is a cool idea. Diplomacy has historically been a weak part of the series, and being able to shore that up may be a lot of fun to play against.

I would say diplomacy is the most misunderstood feature of the series. Players constantly say they want a stronger AI that's smarter at diplomacy. But whenever they have built an AI like that, their play testers complained that it doesn't behave like a real world leader (too ruthless).

This experience led Soren Johnson (co-designer of Civ III and lead designer of Civ IV) to the realization that Civ AIs are supposed to "play to lose" [1].

[1] https://www.youtube.com/watch?v=IJcuQQ1eWWI


I am so tired of game designers/developers being so pathetically wrong about stuff like this. Modders have to CONSTANTLY fix these boneheaded, user hostile decisions in nearly every game. A lot of game developers are not the people actually loving/playing their games in the same way that the cello maker is usually not the cello player.

Even many popular mods fuck this up! DEI in Total War Rome 2 needs submods to make the AI play by the same rules as the player!!! This is top of the most subscribed list right now FOR A REASON!!! https://steamcommunity.com/sharedfiles/filedetails/?id=36258...

Make the AI play by the exact same rules as the player. Make a scaling AI difficulty slider which goes from "piss easy" to "insane grandmaster" but without cheats. It's not that hard to do this, the chess engine crowd figured it out back in 2001. FEAR figured it out in 2004. Game AI has straight up not improved and at many times gotten worse in the ensuing two decades.


It's not that hard to do this, the chess engine crowd figured it out back in 2001.

They really didn't. No one likes playing against weaker chess engines. They play perfectly like a higher-rated engine and then randomly make an obvious blunder. They don't play naturally like a human player of that rating.

The weaker AIs in Civ games do a far better job at "playing to lose" than low rated chess engines. It's not even close!


Yeah, the ability of chess engines to play like a human of a given rating is a pretty recent development.

And it's still a constant complaint that Stockfish suggests moves that no human could really play and follow up correctly.


That makes sense, but at the end of the day, it may be more fun to play around with opponents that act more relatedly. This could take the form of in-game/session-appropriate diplomatic responses that don't read like pre-canned text, or, having explanatory text for why the AI is acting perhaps in goofy ways (which comes up a lot).

Maybe ask Ghandi for his favorite scone recipe, so that he won’t nuke you.

Gandhi*

not sure if serious...

Lifelong Civ player. I have always felt the negotiations part of the game is laughably bad, and a huge missed opportunity. The ability to use language as a tool -- diplomacy, but also rhetoric, veiled threats, etc -- is something I excel at, and I would love the chance to test my mettle against an enemy in an imaginary nuclear war context, because when else do you get to play high stakes games like that with words in real life? Civ is the perfect venue for it, but the game designers are extremely boneheaded about how they executed that particular part of the game.

Even if you don't want an LLM for the actual functionality of negotiations, LLM-generated text would be neat. As-is, the text becomes irrelevant, "Our words are backed with nuclear weapons" is just "nukes = true" - letting an LLM tell you the AI has nukes seems like harmless fun.

Gameplay wise this is a straight remake of Civ3 as a baseline, while allowing much greater customization. Freeciv is definitely an inspiration, but it's kind of its own thing.

Because it was born out of the Civ3 modding community which has been wanting a remake for 20+ years.

Sounds like you've been listening to Civ4 fans. ;) 3 is just as active on steam and has a very active and loyal multiplayer league.


Fair enough, thanks!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: