=== Game Maker? === I discovered Game Maker after a few semesters of Java programming classes. I've always coded, and I wanted to make playful, imaginative things. College wanted me to make piles of apps using JAVA Swing. I began to google for a faster way to play. So GameMaker. Started by one college professor in the Netherlands to teach students game design. The software provides built-in event handling for common inputs and a 2D graphics system. Basically, you attach pictures to objects, drop objects into rooms, and you're playing a game. It's come a long way since those days, but is still a really fun way to prototype fast and to get into game-making. === Slidge? === You go along dropping graphical objects and event-driven logic into something like a game, but when it's time for text, you quickly realize you need text to "typewrite" itself, and to word-wrap, and to fit within boxes, and you need a character avatar to animate with it, and you need choice boxes on the screen to select the next dialog choice... It's a problem that comes up on a weekly basis over on the [[https://forum.yoyogames.com/index.php|Game Maker Forums]]. Game Maker leaves a large hole when it comes to pre-configured behaviors and object prototypes. If you just want to drop some working textboxes into your newly coded game...you're going to have to do a lot more coding. There are other dialog/Visual Novel engines on the Game Maker Marketplace, but these all suffer from a host of difficult problems: ***Lack of flexibility in story structure** ({{togglewrap>flex|Details)}}\\ VN tools usually have static links: you choose A, it goes to dialog A, choose B and it goes to B. Cut-Scenes are usually limited, too--what if I want the "end scene" of a game to be made from several sets of ending sequences, depending upon choices throughout a game? Most VN tools can't stitch together an ending scene like Mass Effect 2. Slide has these features. ***Lack of advanced text features** ({{togglewrap>text|Details)}}\\ There's a lot of expectations on text in modern games: Custom fonts, colors, emojis, "wiggling" animated words, text wrapping, and auto-pagination, for example. Text is often expected to drive in-game events, like changes in character expression, too! ***Lack of modular design to add features** ({{togglewrap>mod|Details)}}\\ VN tools can get pretty complicated--Slidge certainly is! But some effort //should// be made to keep the dev-customize-able parts clear. Many of Slidge's parts are interchangeable and modable, and all data is JSON-based. ***Requiring tons of engine-specific functions** ({{togglewrap>functions|Details)}}\\ Usually, implementing someone's VN engine requires learning a set of custom commands and parameters, and then diving into their code to discover ways to customize the other 90% of the features. Slidge certainly has self-contained custom functions, but launching the engine is simple, cleanup is automatic, and customization is visual. ***Inability to preview visuals while designing the game** ({{togglewrap>preview|Details)}}\\ Adding dialog via code is a tough way to make custom scenes. Slidge places a visual editor over the top of your game (or an empty game) so you can set everything up visually, then import the resulting JSON into your final game ***Lack of data integration between the engine and the rest of a game** ({{togglewrap>data|Details)}}\\ Bringing data into a VN tool from a game shouldn't be hard for the dev! Suppose the player inputs a name into the game, and I want that name to be used in dialog? Suppose I want a choice selected in a dialog scene to affect a stored piece of data back in the rest of my game? Slidge uses a central Map data structure and a tag-based syntax to pull data in and send data out easily. **Sooooo. Using Game Maker? Adding VN elements? SLIDGE!**