when i was a kid, you could build a simple game or application by dragging and dropping a few UI controls, and gluing them together with a few dozen lines of BASIC or Pascal or HyperTalk. it might take 15 minutes, at most, to get your little character walking around on the screen. this is how we ended up with a lot of hilariously good and cheap shareware you could share on BBSes in the 90s.
for the past year i've been quietly working on building a software thingie that doesn't exist anymore. i've been building a software toolkit that's kinda like Visual Basic and HyperCard and Borland Delphi, designed for making tile-based 2d games.
i've been using it to build my own little goofy games, and improving on the drag'n'drop IDE as i figuring things out. it's not done yet, and has a long ways to go before it's ready for other people to start making their own little applications and games. think PICO-8 or ZZT if they had grown up on a steady diet of Windows 3.1 and GeoWorks Ensemble instead.
i'm really, really bad about polishing turds to infinity and never releasing them. to break that habit, i've built a mini-website for the IDE/Shareware Creation Kit. it's called Exigy, named like a bad 80s metal hair band or richard garriott game.
i'll be posting weekly blog/devlog updates there, so i don't irritate anyone with them on this account. there is an rss feed button at the top right if you hate my demonic php and css.
@vga256 LOVE the logo and website! Tuned in
@dareelcatskull cheers! i had a lot of fun making them
@vga256 Looove the Next-like logo
@90sScriptKiddiw glad i didn't hit too far off the mark!
Oh wow that’s such a pretty site. That colour palette too !
I want to go back to making a cool website, but I’ve long lost the touch in making pretty Web things.
But just like what you’re building, getting something—anything—out is like taking pictures at the gym, is also the motivation I need.
@pierrenick thanks. i was afraid it was beginning to look like pepto bismol
i'm happy to say that i'm using 20+ year old code and technology to build the site. zero JS - just plain html and css.
completely agree re: gym. if i don't release something publicly, it'll be way too easy to let it disappear
@vga256 Haha love it. Man PHP (and CGI, Perl, anything of that kind) was so easy to host.
This is superb design though! I threw myself a Hugo site with a nice open source theme but I’d love to make myself a nice retro one.
@pierrenick that's exactly why i went for plain old php - no fighting with security updates and all that stuff. wordpress is just awful now.
i've heard good things about hugo!
@vga256 The RSS links back to tomodashi.journal.. Is that intentional?
Another small uninvited hint: if you add a <link rel="alternate" type="application/rss+xml" tag in the header, apps like the parrot can auto-discover it.
@vga256 this looks very interesting! I'm following this and look forward to the first release (can't wait to play with it haha)
@notthatdelta once i get some of the more difficult stuff figured out - saving and loading! - it'll be ready to at least goof around with. turning it into something production-ready might be a long wait
@vga256 Honestly I'm only at the "goofing off" stage of my journey into game development, so that's a good fit for me!
@notthatdelta great!
@vga256 Woah! That’s incredibly cool!
@vampiress it’s coming together slowly. you know what it’s like writing an editor - it’s never really finished
@vga256 Haha. Yep. I've been fighting the urge to make another one for Deck & Conn.
@vga256 Woah! Someone else that remembers GeoWorks Ensemble!
@Crell all five of us
@vga256 GEOS represent!
@vga256
Was clicking around and ended up on your tomo.city site. That is fascinating stuff. Whats the best way for me to follow developments for that please?
@phanjam any updates to tomo are posted on the .plan on the site. it has been dormant for a while, but i am getting back to it.
@vga256 it's weird that in the 21st century we don't have anything like Visual Basic 6 where you could make a fully functioning GUI Windows app in no time. There's just nothing that's as easy to use these days... in a way it feels like we're going backwards
@kwramm it is absolutely frustrating that we don't have VB6. that was absolutely the peak of the IDE!
@vga256 exigy is a very good name IMO
@doty glad to hear it!
@vga256 damn this is good vibes
looking forward to trying it out !
@Difegue once i get an imaginary NeXT-like UI designed it should be ready for goofing around with!
@vga256 this is an excellent idea and I'm happy to follow along! even if it never gets finished I want to see what you do with it!
@nycki thanks for the encouragement! i am working hard to make sure it gets released :)
@vga256 This looks really cool! I spent many years working with Lua and Love2D, and one of my biggest frustrations with it is that the UI toolkits are all pretty terrible. I'm looking forward to seeing what you come up with
Is it all pure Lua, or are you relying on any shared libraries?
@smallsco the UI toolkit are still indeed awful mercifully, that's also true for unity and every other engine i've worked with. no one seems to want robust windowing/ui element systems.
i completely rolled my own based on what i thought looked and felt good. most of the ui elements (windows, text boxes, buttons, tilemap renderers, etc) are all drag and drop from the ui element panel onto a window. all elements self-render within a window, based on their z-indices. the worst - by far - was writing all of the mouse handling code.
it's entirely written in lua, with zero libraries. as of this week, i'm testing out a script called Binser for serialization - so i may have to rely upon someone else's code for saving/loading, but that's going to be the only one. writing byte-level data management code is above my paygrade
@vga256 For my main project I settled on imgui, with bindings ported to Lua/Love2D. But because it relies on a shared library, it would break whenever Love2D updated LuaJIT, and then when Apple Silicon came out, you couldn't run it without Rosetta. Sigh. At least it looked nicer (and had more features) than anything else out there.
https://github.com/smallsco/mojave/
Oof, yeah, serialization is a big rabbit hole. JSON worked for my use case above, but obviously there are certain things that can't be represented with it. I've also worked with protocol buffers in Lua, although that was in the context of an OpenResty webapp, not a game.
Anyway, I'm impressed that you've done it all in pure Lua! Definitely looking forward to playing around with it once you've gotten a release out.
@smallsco cool! imgui is indeed a nice library - i've seen it ported to pretty much every engine. i never liked imgui's structure myself - writing new controls and customizing existing ones was too big of a hill for me to climb. exigy's controls are all OOP based, and insanely simple to create and modify. that being said, making it all work together took 80% of my time
i too thought about using external libraries and just dreaded the prospect of future incompatibilities. it would have driven me insane to tell users "you have to be running love2d v. 12.0.2 and don't forget to download library X and Y and Z or it won't work!" i'm glad i wasn't far off from what you went through.
i really wanted to use human-readable storage like json, but it looks like it's not quite amenable to really complex table structures, and sadly some of my data isn't super clean :\ i'm an OOP programmer at heart, and data-driven design just isn't my idea of fun.
once i get this serialization thing half-working, and people can save/load/export projects, i think it'll be ready to put out a pre-alpha
@vga256 this is exactly the kind of thing i've always wanted!!!! i look forward to trying it out!!
@Sofiadrawsmore glad i'm not the only one!
@vga256 ooooo. You have my attention!
@vga256 whoa, this is so cool! I've toyed with a similar idea in the past too. A kind of retro styled desktop environment coded with modern tooling. If I ever make something of it, it will end up at http://www.neoclassic.systems/
@wezm awesome :D keep me in the loop if you make some more progress with it.
@vga256@dialup.cafe Will Exigy be free (as in freeom)? What license will it use?
@SuperDicq probably not free, but it's written with no use of external libraries so the licensing model will at least be easier to figure out.
@vga256@dialup.cafe What's the reason for making it nonfree?
@vga256 I thought I'm the only one who's nostalgic about Delphi-like IDEs of the past.
@0x0961h ooo you just tempted me to add a Delphi-styled UI skin for it!
@vga256 omg yes. i'm still sad they moved from multiwindow-ness of Delphi 1-7 to a single-window integrated solution in RAD Studio, it was very nice, sleek and, well, minimalistic and customisable, unlike the "post-Delphi" IDE monstrocities
@vga256 Hmm, the site seems to break a fair bit when trying to load it?
@joepie91 tried reloading? i'm not seeing anything weird on my end, but i didn't extensively test it with every browser.
@vga256 Yeah, reloaded a few times, it seems very flaky - I seem to get Internal Server Error (ie. HTTP 500) about half the time on a given request, so something's probably in the server's error log about it.
@joepie91 wow! i better check on the web server. maybe it's getting hammered. thanks!
@vga256 wow look really cool! Can’t wait to see what happens when people play around in it
@kai looking forward to releasing a pre-alpha in the new year. as soon as saving/loading projects are working!
Were there people who used Geoworks Ensemble?
Other than the source finally getting released I've heard nothing much about it. I guess I travel in different circles.
@bitsavers hey, there were at least five of us!
there were many that grew up with geoworks, but it wasn't even 1/1000th as popular as Win 3.1 at the time.
@ernie's article is always my go-to for this situation https://tedium.co/2019/06/20/geoworks-geos-history/
@vga256
Looks awesome!
@duncanlock looking forward to releasing a pre-pre-pre-alpha people can goof around with in the new year :)