| ▲ | Razengan 3 hours ago | ||||||||||||||||
I've been wondering about this for some time, that how there really isn't a language that's made from the ground up just for coding gameplay logic. Like we have SQL for databases, Julia etc for maths etc, but gamedevs still have to plod along in general-purpose languages with archaic conventions established 50 years ago by people who had nothing to do with games. I'd love something with the syntax of GDScript and the features of Swift, with special constructs just for gameplay logic, which is often a hybrid between inheritance and composition, static and dynamic, declarative and imperative. I've been toying with what would be the ideal syntax (for me), but I don't have the brains to actually make a language :') | |||||||||||||||||
| ▲ | BSTRhino 32 minutes ago | parent | next [-] | ||||||||||||||||
I've actually spent the past 3 years making Easel (https://easel.games) specifically for gameplay logic. It's got behaviors as a first-class language construct, ownership and context is implied hierarchically, it's concurrent and event-driven to match how game worlds work, and the multiplayer is automatic because it's built into the fabric of the programming language. It's been a lot of work... | |||||||||||||||||
| ▲ | zzo38computer an hour ago | parent | prev | next [-] | ||||||||||||||||
There are many that are specialized for different uses in games, such as: - ZZT-OOP - MegaZeux Robotic - ZIL - MESH:Hero - Free Hero Mesh - Super ZZ Zero - OHRRPGCE HamsterSpeak (There are probably a lot more that I had missed) All of these are specific to the specific kind of games being made with them, though; different kind of games will require a different kind of logic. MESH:Hero is specific to a specific kind of puzzle games, and Free Hero Mesh is a FOSS clone of MESH:Hero with a different syntax and more features. | |||||||||||||||||
| ▲ | Balooga 3 hours ago | parent | prev | next [-] | ||||||||||||||||
There is OpenGOAL[1]. A re-implementation of the language that Naughty Dog used to created Jak and Daxter. | |||||||||||||||||
| ▲ | meheleventyone 2 hours ago | parent | prev | next [-] | ||||||||||||||||
PuzzleScript is the closest to this I can think of. Hyper specialised though. | |||||||||||||||||
| ▲ | Scramblejams 2 hours ago | parent | prev | next [-] | ||||||||||||||||
Check out Jai, apparently if you ask nicely its author will let you use it. Unofficial docs here: https://pixeldroid.com/jailang/ | |||||||||||||||||
| ▲ | macintux 3 hours ago | parent | prev | next [-] | ||||||||||||||||
Well, if you’re interested in text-based games, there have been custom languages for a long time. https://www.linusakesson.net/dialog/craverly/craverly_side_b... Also LPC for muds, although that definitely wasn’t built from the ground up. | |||||||||||||||||
| ▲ | reactordev 3 hours ago | parent | prev [-] | ||||||||||||||||
SQL is deterministic. Julia is deterministic. Gameplay is not deterministic. Constraints are arbitrary and there are no rules. | |||||||||||||||||
| |||||||||||||||||