Sorry for replying this late Thomas Frohwein <tfrohw...@fastmail.com> writes:
> Hi, > > I've been experimenting with running commercial games with our Godot > port and a substantial number refuse to run because they can't find > Steam in Godot's namespace. Those games seem to be built with a module > "GodotSteam" added during compile time. > > This diff below adds said module to the port. It allows running some > more (indie) games on OpenBSD. I know of "Nightfall Hacker", "SJ-19 > Learns to Love!", and "Cruelty Squad" that I've been able to run with > this change. There are probably more... > > This diff just adds it to the existing port, but as it leads to a > deviation from "vanilla" Godot, it might be preferrable to make this a > flavor, maybe godot-godotsteam? Or 2 separate ports that are based on > the same Makefile.inc? Of course, maintenance would likely be easier > without adding such complexity... The additions from the GodotStream API seems to be limited to a single namespace, so I'm not opposed to bundling them into the shipped Godot. It's a deviation from vanilla Godot for sure, but it's small and done to help making more games available. I'm OK with bundling this in the current Godot port as your (updated) diff does, but we should document it somewhere (be it with a message or a README) to not lure users into thinking that these are official API. I'm also fine with a flavor, but given how small the impact of bundling this library is, I tend to prefer avoiding splitting in multiple flavors or subpackages. > You can test that the namespace now exists in Godot by opening a > project in the editor and adding a script, then starting to enter > something from the Steam namespace like 'Steam.getAchievement' into the > code and seeing this show up in the auto completion. All this works > through the Goldberg emulator library, so some Steam functionality may > be stubbed or not return what you expect if used for actual development. > > comments or oks? the updated patch is fine for me :) (the CVS marker is the updated diff is wrong, as it changes the revision from 1.26 to 1.25 when the latest is 1.27, but I don't think it's a problem in practice ;-) I checked that the wantlib is correct and that the APIs exists. Godot doesn't crash when calling stuff under Steam.*, but I don't have an account anymore so I can't do further runtime testing.