How much has BYOND's programming language changed since 2005? I haven't touched it since then but I was considering doing something productive and creating an original game.
Is the syntax still the same, anywhere I can find a link that explains any changes (if any?)
Thanks.
ID:1573876
May 14 2014, 12:56 pm
|
|
The syntax is still the same. I doubt anyone who maintains a language will ever overhaul the syntax.
There are new features, though... Pixel movement and big atoms Map text Multi-threading, better mouse tracking, animations and matrix transformations Isometric maps Server-side SQLite support calling windows/interface functions through browser (via topic call) map blend modes Alternatively, you can read every BYOND release note since roughly 341, that's late 2004. http://www.byond.com/docs/notes/ In my spare time, I like to re-read every release note ever published. It's a good read. |
Thank you guys, I appreciate the information. I've been considering getting back into using BYOND and creating a game (Obviously not a fan game this time ha). I'll be looking into all this stuff!
|
SSX's list is pretty good, although multithreading is still experimental and seems to be having issues for some games that have been very hard to suss out. Since we're discussing everything from BYOND 4.0 onward, I would add:
- Skins - 32-bit icons - 3D sound and module music - Elimination of most 64K limits - Client-side icon processing (more of a performance boost than a language feature) Big icons were introduced early in 4.0 but the support for them was fairly primitive, splitting them into tiles. 455 introduced the ability to use big icons natively, and 490 (IIRC) was where pixel movement came into the mix. Animations and transforms were new to 500, and blend modes followed soon after. SQLite is the newest big feature. Of course the pager was completely overhauled as well from its BYOND 3.5 origins. It's still a separate entity but it's now more interactive. |
In response to Lummox JR
|
|
Thank you, Lummox JR.
|
There are a host of new variables, types, and procs.
As for techniques, quite a few things have changed.
For one, BYOND can do more than 10FPS now, which means world.tick_lag can be less than 1. sleep()/spawn() will respond to decimals now. At 40fps, sleeping for 1 tick will be: sleep(0.25).
Icons can be different sizes now. Set that up with icon_size. Icon files can be larger/smaller than world.icon_size in map_format TOPDOWN_MAP/ISOMETRIC_MAP/SIDE_MAP format. You no longer have to split up big icons anymore like we used to have to do.
Then there's also the interface stuff. winset()/winget(), Javascript interaction via the browser through output(), etc. It's all pretty easy to grasp once you get the basics of it.
Most of the changes have come in the form of bugfixes, more modern approaches, and additional features added to existing ones.