Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
cmdrk
Jun 10, 2013
so i've been casually chipping away at a tile-based, isometric pixel art game for about six months and i would appreciate some advice on art bits.

my game is thematically sort of SimCity-meets-Dope Wars. i've been working on improving my palette, and I've been investigating dynamic lighting. I'd really love to have things always be night time and full of NEON, casting shadows and stuff is bonus too. i've been working in Godot, and it seems that making occlusion and lighting work in 2.5D is .. not impossible, with some help from shaders. my art at this stage is pretty simple. isometric pixely blocks of various shapes, stacks of said blocks, some trees, etc. so nothing is set in stone just yet.

so before I go down the road of making bump maps for all of my tiles and trying to implement a shader to make the lights/shadows work properly, i'd like a sanity check on this. has anyone done this before and have thoughts? or maybe i should take some other approach?

Adbot
ADBOT LOVES YOU

cmdrk
Jun 10, 2013

Zaphod42 posted:

I haven't done more than just some render tests, but if you want 2d sprites to look really cool then realtime lighting and normal maps is the way to go. You could maybe get decently far without the normal maps just trying to do cool things with real-time lighting and your sprites, but if you can find a reasonable workflow for generating the normal maps then the results can be amazing.

Here's a really cool devblog though by someone who has gone all the way:

http://www.wholehog-games.com/devblog/2013/06/07/lighting-in-a-2d-game/

this article is perfect! thanks a lot.

cmdrk
Jun 10, 2013
i'm trying to build a turn-based tactical combat feature into my game, which will be vaguely in the style of xcom. my game's thematically in a city and unfortunately I've gotten myself worked into a weird corner with the art style. i've been using an isometric style thus far, and it is vaguely reminiscent of SimCity-style games in the "overworld", but I'm running into some problems when I build my combat maps.

essentially the problem is that all of the walls and such for my game should be rather tall in the combat map (i.e., the background is all tall buildings and such), but that can obscure the player characters. anything thats in the foreground of the map + also tall is going to be broken in weird ways.

the maps are procedurally generated from set pieces, and currently all use temporary art so throwing stuff out wouldn't be a huge loss.

a few ways I've thought about dealing with this:
- switching perspective for combat. perhaps 3/4 perspective will handle tall objects better? or completely flat? or use some sort of visual hint that the buildings are very tall and fading up toward the camera?
- dynamically turning tiles transparent when the player mouses over them, or a character object is behind something tall?
- creating variants of the set pieces for the background (i.e., tiles furthest away from the camera), that can be very tall, but then having shorter variants in the foreground so the player can be seen over the walls?

below is highlighting the problem for a fairly short tile, and you can imagine how this would get completely horrid if I made them exceptionally tall:

cmdrk
Jun 10, 2013
thanks all I super appreciate the responses once again. this should give me some traction!

cmdrk
Jun 10, 2013

awesomeolion posted:

hello all, i started an open source wario ware clone (download link for windows) and i've got a few bad mini games built so far. It's a public repo so you can clone the project and add a mini game if you feel like it! Also taking mini game suggestions...


this is a really cool idea

cmdrk
Jun 10, 2013
so I've followed your game a little bit in the thread.

I think the trailer looks pretty good so far. 2 questions/comments

1) are there more bosses than flying battleship and the crazy train? totally OK if there aren't, but I would be sad if the trailer spoiled all of the best stuff.
2) i'm excited for ship design, but the trailer makes it look a little overwhelming to me.

cmdrk
Jun 10, 2013
i've been building some systems for multiplayer, turn-based combat for a few months now. I've been dinking around layering some space-themed flesh onto those bones. have been making some modular ships in blender, my plan is to render them down from 3D into a sort of 'dirty' pixel art style. here's my test ship at a few angles:





(i have no idea how to do lighting but i kind of like the weird everything in shadow look. space.)

i'd like to be able to just script blender to generate all permutations of possible ship configurations (thinking 3 modules per ship sort of cribbed from inspired by Sword of the Stars) at all needed rotations (4-8 rotations). back of the envelope suggests i'd make something like 600-1200 images, assuming 3 sections, 5 possible choices per section, and 4-8 rotations. then enemies would be either cobbled together in the same way, or one-offs with similar rotations.

reasonable or insane?

cmdrk
Jun 10, 2013

Zaphod42 posted:

If you can generate normal maps from that, you can do some REALLY cool real-time sprite lighting. And with the 3D model as a source of the sprite, it *should* be relatively easy to get a normal map rendered.

I don't know anything about blender scripting though sorry.

creating normal maps is a fantastic idea! I shall investigate this post-haste.

regarding the scripting, yeah, blender supposedly has a really nice python API. I think the data volume would be ok, the image of each rotation is like 8KB. So even 10,000 possible permutations would only be 80MB, double that for normal maps. I guess the only problem would be any touchups that need to be done i.e. in aseprite or something would have to be also applied programmatically unless I just never regenerate things ever.

cmdrk
Jun 10, 2013

this is a good cause and i support it. alas i have not a twitter account.

cmdrk
Jun 10, 2013

xzzy posted:

Best I can tell, "figuring out lighting" is a long painful process of trial and error. It's very hard to research with google, you can get bits and pieces to kind of help you on the way but there's no source of truth out there you can use to jump start your study. So be prepared to waste a lot of time changing a setting and waiting forever for a bake to complete. Do that long enough and you can predict what the sliders will do and you'll be able to reach your ideal lighting a lot faster.

I spent months figuring it out in my Source engine days, and then weeks learning Unity's quirks in HDRP. I'm still trash at it but at least I can kind of make a scene look decent.

Hah, that's exactly what I'm starting to find out myself. for my prototype, I took advice from earlier in this thread and had blender generate normal maps in addition to the sprites i'm rendering. I have but a single light right now, and it looks.. aggressively mediocre? It seems that an isometric view can greatly complicate this entire business though, when you're using strictly 2D.

In other news, i'm having a lot of fun experimenting with Blender's explosion modifier, pixelizing and rendering it into a Godot AnimationSprite.
https://www.youtube.com/watch?v=5Aa_1pVBsUw

cmdrk
Jun 10, 2013
not nearly as fancy as all of the cool stuff that you guys are doing but i've been building a pseudo-MUD (perhaps more of a MUCK) with user-defined rooms and linking sort of resminiscent of 90s webrings.

I'm using Godot for the front end and my own homebrew networking library using Websockets for transport, Protobuf for message serialization and Erlang for the backend. I've got a couple of other irons in the fire using this recipe and I'm pretty happy with it. It's kind of my platform to work on my Erlang skills so gameplay is a distant second, hehe. I love being able to change the backend in real time while clients are connected (and most likely crashing them :ohdear:)

https://www.youtube.com/watch?v=2F6ltRFIIEQ

i'm working on adding scripting via Lua to build your own NPCs, environment triggers, etc. more likely i'll run out of gas and never develop it further than this :v:

cmdrk
Jun 10, 2013

Zaphod42 posted:

Love your terminal UI :swoon:

I just recorded 8 minutes of gameplay from my new level which I was very happy with only to find OBS didn't record any audio :negative:

thanks!

i recorded that video like 12 times because simplescreenrecorder on Linux decided that it was going to record a random 1024x768 rectangle instead of my game window, so I feel your pain.

cmdrk
Jun 10, 2013

Polo-Rican posted:

making a fun gameplay prototype: a few days

h-heh y-yeah. a f-few days..:confuoot:

i find i'm much better at the fiddly menu making and building tooling than making enjoyable gameplay loops. feels bad, man.

cmdrk
Jun 10, 2013
Has anyone ever found any gamedev articles on lighting dark scenes properly? I'd love to build some "true" night time scenes where players need a torch or whatever to see, but it seems that may be a fool's errand given how many results I get for "Foo is too dark! how do I fix my monitor to see?"

What think ye?

cmdrk
Jun 10, 2013

commando in tophat posted:

So I went ahead and tried texturing one of my stupid spaceships. Here it is next to its untextured original. It didn't even took that long after I figured out all the software involved and drawn some height textures to stamp on it. Overall I'm pretty happy with the result, and working on it was pretty enjoyable, and doing next one with already prepared materials should be much faster. If I had to do it with painting over UVs in gimp I would go insane. Also big thanks to that goon who posted step-by-step instructions how to bake normal maps in blender :tipshat:

I ended up using blender and quixel mixer. I've tried trial of substance painter, but ended up with quixel mixer. It is free and substance wasn't that much better for the stuff I need. It is pretty mind boggling to me that neither of these has checkbox to mirror brush... like, come on, substance has these hard surface modeling textures in special category of which half is asymmetrical, give me option to use mirrored version dammit!



hey that looks pretty great! I too am making spaceships, but they don't look very good hehe. I'm going for a more turn based strategy style of game, with a "pixelize" pipeline, but I might try out quixel mixer after seeing your results. I'm not super happy with the monochromatic models, though with normal maps exported the lighting can be kind of nice.



FWIW, I found this Blender plugin can really help if you get stuck creatively: https://github.com/a1studmuffin/SpaceshipGenerator

cmdrk
Jun 10, 2013

commando in tophat posted:

Generated stuff is great if you can tweak it into something you like, and isn't super repetitive :) (stuff you linked seems alright). I actually had a big luck in finding a concept artist that designed around 5 ships for one faction and I salvaged some of the drafts he did, so it doesn't look too bad even after my modeling skillz are done with it.

yeah, I use the spaceship plugin to get a general idea for a silhouette, then blow it away and try to model something by hand. it works okay. I've been spending a lot of time trying to identify what kinds of features give a nice shape when scaled down and pixelized. One thing I do, for example, is subdivide a plane a couple of times, inset each quad inside, then extrude it a bit and bevel the edges of the extruded part. when rendered down it can give a nice 'window' effect. similarly taking on random spheres and stuff seems to break up the surfaces. greebling is fun :)

Where did you find a concept artist? I was looking at Fiverr maybe for various small tasks (some logo stuff, character portraits, etc).

cmdrk fucked around with this message at 18:07 on Mar 15, 2021

cmdrk
Jun 10, 2013
Do CDNs cache webassembly things? Wondering about cutting server costs for html5 games by fronting it with cloudflare or something

cmdrk
Jun 10, 2013

TooMuchAbstraction posted:

I'm working on the tutorial for the ship designer in my game, and there's an important question that I need to answer: should the tutorial be skippable? You can't not engage with the ship designer -- you'll just fall way behind in the power curve (unless you import other players' ships or I make a bunch of predesigned ones for you, but I don't want to without compelling evidence that it's needed). So I want to do my best to make sure that players understand the designer.

The problem is pretty much, do I force everyone to engage with the tutorial even though they might not need it, or allow them to skip it and risk players skipping it and then getting stuck (and refusing for whatever reason to re-start the tutorial)? Of course there are players who will stubbornly refuse to read the tutorial even if it's unskippable, just mash through all the dialog and then fail to follow the interactive prompts. I can't help them. It's more a question of how much I piss off the players who don't want to be lead by the nose through the ship design process, vs how much I risk losing the players who are perfectly willing to be tutorialized but will skip things if given the option.

All told I don't think the designer tutorial should take more than a few minutes, if speedrun. I haven't implemented it yet, but it should consist of dialog spelling out what you need to do, UI vignetting to highlight the relevant thing to interact with, then locking the game down so that only that thing can be interacted with, with a prompt to tell the player what to do. For example:

can you flag it in options? (Skip All Tutorials true/false) then the user has to go out of their way to turn it off.

otherwise for the tutorial itself, i imagine you could have a contrived but thematic "this hull is due for heavy refit and repair, can you oversee operations?" thing where you teach them how to build ships.

cmdrk
Jun 10, 2013

Another Bill posted:

In this time of great pandemic, I'm looking at building some simple 2D platformers with my kids. I have coding experience but learning a whole library / GDK seems a bit daunting and time consuming.

Is Game Maker Studio the easiest way to get something up on it's feet? It's pure hobby, this will never be for sale. :)

I've never used GMS, so I can't really compare, but I'm a big fan of Godot in general. There are some decent places for instructional material aimed at kids like: https://kidscancode.org/godot_recipes/

cmdrk
Jun 10, 2013

TooMuchAbstraction posted:

one of them has a big betrayal scene

Spoilers, man! Some of us want to play your game! :v:

quote:

My thinking is that the first mission should ideally be a relatively chill mission, to provide some space to breathe after the previous two hectic missions and before the boss fight. I'm struggling a bit to figure out how to structure that though. My first thought of course was to make it a stealth mission, but I'm not confident that I can implement good stealth mechanics in a game that isn't built around them. Ultimately my game is about sailing ships and shooting things in a very loosely historically-inspired setting. How do I play to those strengths while also making the mission feel different in a way that isn't overwhelming the player with tons of stuff?

How about an escort mission, or something? Escort some rescue/salvage/supply ships to a location, perhaps a bonus reward if X% of the ships are escorted without casualties? Perhaps the reward making the boss fight a bit easier?

cmdrk
Jun 10, 2013
update on my shovelware 2.5D psuedo-pixel art game.. i'm working now toward a multiplayer turn-based strategy with simultaneous turns sort of like Atlas Reactor but PvE. i've spent a lot of nights and weekends over the last month working on the server side of things (custom protocol over websockets with a dedicated server + lobby system) and things are finally getting to the point where I can actually start working on the game part of my game :v:

the fun thing about doing models in blender is that i have real normal maps and they look cool and good. thanks to whoever gave the suggestion for that.
https://www.youtube.com/watch?v=FJL-VAC2uDo

then I learned how to goof around with keyframes and rotations in blender to make a test render of the thing in motion.
https://www.youtube.com/watch?v=zFezj1uZpa0

e: sorry for the low quality i dont know how to youtube or generally make crisp videos of pixel art :barf:

cmdrk fucked around with this message at 20:43 on Apr 30, 2021

cmdrk
Jun 10, 2013

The Titanic posted:

Looking at godot pretty hard over Unity because I am bouncing hard on Unity's UI after the very nicely done UI I learned with Unreal.

I'm super enjoying Godot personally. The whole scene tree organization, everything GUI thing also being accessible via code, and the observer pattern for communicating between nodes just clicks well in my brain.

cmdrk
Jun 10, 2013

The Titanic posted:

I have not played with it yet. I'm back to worrying if learning a scripting language is less smart than just going with unity and using a known language. :confuoot:

I'm also debating sacrificing doing all the little fiddly pixel animation stuff with just larger animations that I don't have to really worry about pixels looking pretty quite as much and just draw stuff.

My latest thinking is 256x256 and scaling it down to whatever I want and doing sort of blah-pixel art that's not really pixel level stuff with that amount of meticulous thinking but it's low resolution.

Needless to say I could care less about pixel perfect positioning I think. But genuinely I don't know. The move away from 3D has me scared of failure!

Yeah, unfortunately I can't comment on the performance other than tilemaps making my 2 year old thinkpad (with Intel graphics) turn into a helicopter. I haven't figured out why so that's pretty fun :confuoot:

I'm targetting toasters via html5+websockets for my game and I guess the trick there is to use GLES2 rendering until Godot 4.0 saves the day with the new renderer fanciness. Until then... I'm waiting :smuggo:

For what it's worth, you can use C# with Godot. It's officially supported per a development donation from Microsoft.

cmdrk
Jun 10, 2013
has anyone put Lua scripting into their game before, or know of games that have done it really well? Or perhaps know of a generic resource for embedding Lua into games?

I've been studying Into The Breach's script files and they seem really well organized. I'd like to do something similar for my game, where other developers could rapidly put together new items, entities, etc via Lua. However I am really struggling with doing anything more trivial than reading some constants from my Lua scripts.

One thing I want to do is let players implement new weapon types. For example, you could imagine a laser that can hit all targets in a straight line from {x,y} to {x2,y2} (ignoring diagonals for simplicity's sake). However, I'm not sure how to implement the level of indirection needed to do that. I guess at the time of calling, the script will have a function that take take board information and return the affected tiles appropriately? I guess I could have scripts for the "weapon" entity implement some standard callback interface?

cmdrk
Jun 10, 2013
Appreciate the insights! I definitely understand going overboard, I've had $WORK projects that started out with the premise of "everything will be pluggable!!!asdfasdf". Naturally this ate up all of our time, but we crafted the world's most ornate pegboard with very little actual meat on the bones by the time the project was over :v:

I've been kind of hoping the bulk of my server code would be doing all of the account stuff, lobby, shepherding players to matches, handling disconnects, etc while leaving all of the actual game logic in Lua. Admittedly I did start down the path of "I will have Lua do the game logic stuff!" without actually having a hard-coded example of what kind of stuff it should do in the actual server code, and thus nothing to export to Lua. Weeeee.

cmdrk
Jun 10, 2013

TooMuchAbstraction posted:

It's totally valid to put most or even all of your game logic in Lua! In that case, you'll want to identify what your core "engine" is, and then figure out what API that engine is going to expose to Lua so that Lua can handle all of the game state. Really what you need to do is sit down and come up with a design doc that identifies the core components of your game, e.g. physics, UI + UI controllers, savedata handling, asset (graphics, sound, animations, music, etc.) management.... Stuff that for one reason or another shouldn't be implemented in Lua needs to be accounted for here, and you'll need to figure out how it communicates with the Lua side.

Yeah, that's a very good point.

quote:

(The other thing I'd advise you is to make sure that you can tolerate working in Lua. I personally can't, but I know plenty of people who can or even love the language)

Yeah, I do need to actually mess around with the language :v: I'm not sure I "get" tables yet.

Right now I'm writing the front-end stuff in GDScript/Godot with the backend in Erlang, so I've already got 2 languages in play. I'm sure adding another layer of indirection with Lua will definitely be an improvement and in no way detrimental to finishing this project. :getin: Some madman did write Lua language support for Godot, so maybe that's the way to go.

cmdrk
Jun 10, 2013

Your Computer posted:

you know what, Godot's pretty cool. I like the signal system a lot and it's nice to get pixel perfect 2D working right away with no fuss



that looks great!

now i have to go find my copy of pokemon pinball. thanks a lot jerk

cmdrk
Jun 10, 2013

Your Computer posted:

just showing off some progress, now with ~*~sound~*~

https://i.imgur.com/tuuA2g4.mp4

I'm very happy with the spinner! I've done all the sound effects myself on gameboy hardware. Still need to make a bunch more and implement some more functionality but I'm super excited at how pain-free this project has been. Currently trying to stick to a "get it working" approach rather than overanalyzing and overengineering everything, but long term I'd love to have all the pieces completely modular so that making new tables or even new pinball games would be (relatively) easy.

e: has it really only been a week since I started on this project?

I wanna play this bad.

cmdrk
Jun 10, 2013

DaveKap posted:

I had 10k people see my game run with twitch integrated marble racing and it barely boosted my sales. Some dude with 200 viewers got me a week's worth of sales in 20 minutes of playing. What I'm trying to say is I have no loving idea how to market my game, I don't believe there's any actual logic to it, and if you learn anything please come back and tell me. I thought I could figure this poo poo out but after scattering information across half a dozen social media sites, using key sites to let streamers request the game for streaming, using Steam's curator thingy, being given thousands of free ad-views on Facebook/Instagram, and having 35/35 positive reviews on the store page, I figured maybe I could pay off the time I took to develop the game. I can't. I have no idea how to sell a game. poo poo's hard. Good luck.

Re-reading what I just wrote and it sounds like I'm dying or something. Don't worry about me, I'm living a dream despite the not-very-successful game sales. Marketing is just really frustrating if you don't pay someone to do it for you and even then it can be really frustrating because, as a former marketer (it was so much easier a dozen years ago...) I know for a fact that even marketers can't guarantee sales.

what uh... is your game?

is this guerilla marketing? because now I'm interested. :colbert:

cmdrk
Jun 10, 2013

FuzzySlippers posted:

Playing around with some ways of doing fog of war and backgrounds. When the game switches to isometric combat there are spaces in view which have nothing there in addition to which is hidden.

personally I like #1. having it all black lets your mind fill in the gaps. gives me some strong Baldurs Gate II vibes. I guess it also depends on how much RP atmosphere you're going for.. #2 sorta breaks that and #3 definitely does, for me.

e: just saw your comments about cosmic fantasy. I think #2 could work if you added some stuff around the interface of the edge of the map and the background that makes it fit together somehow. perhaps some adornments where there's currently hard edges? give people the feeling that this is a temple floating in space or whatever.

cmdrk fucked around with this message at 05:36 on Jul 9, 2021

cmdrk
Jun 10, 2013
I've been grinding away at my little project which is shaping up to be a multiplayer roguelite inspired by Into the Breach and Atlas Reactor.

I really like the visual style of old TUI interfaces from the DOS days, like Norton Commander and whatnot. So I'm leaning into that with some nice monospace fonts and ASCII box drawing characters for the UI.


The core gameplay loop is based around somewhat tactical combat with a short decision timer that runs simultaneously for all players. This keeps the game session moving along, specifically to try to avoid some of the problems in other turn based games when they get quite a few players in them. I also really hate that games these days seem to assume that you have no more than four friends, so I very much want to support reasonably arbitrary numbers of players in a session.

Players can queue up a few actions for any given round, the server resolves combat/movement and sends the results back in an "execute" phase that replays the results for the clients. I'm hoping to find a fun middle ground between having enough time for making some light tactical decisions but not so much time as to cause boredom for people waiting around.



In a given round, players can explore a procedurally generated board, and once I get some rudimentary enemy AI in place, kill stuff and collect loot which will provide new abilities. I'd really like to have some interludes between boards where folks can take a breather and do some light interaction, including trade and perhaps some Star Control-esque interaction with aliens.

Throwing :shepspends: at Valve to put my game on Steam has been great for bullying my pals into suffering through my buggy updates.

I'm recycling large pieces of the custom server backend I wrote for the last project, including a lobby system, match creation, board generation, etc. I tried to get Lua support working in Godot so my backend and frontend could share a scripting language, but that ended up being a huge waste of time. Instead I decided to start working on even bigger waste of time by writing an interpetter for a strict subset of GDScript that I can embed into my server backend. My lexxer seems to work and my parser is questionable at best, but it's a fun diversion and totally new territory for me.

cmdrk
Jun 10, 2013

Hammer Bro. posted:

Heck yeah, code reuse!

Also I'm surprised you had trouble integrating Lua; I've never used it myself but I was under the vague impression that it paired well with Godot. But I've also experienced the joys of writing a scripting language within a scripting language, so I know how satisfying (and ultimately foolish) that can be.

Yeah, the Godot Luascript author had made some comments in the past that he felt like the Godot developers were difficult to work with, and it didn't seem to build against the latest 3.2.x series of Godot. I just popped over there and saw he updated within the past couple of days, so.. I dunno.

Hammer Bro. posted:

e: Forgot to mention but your screenshots / outline give me good Battle Hunter vibes. It was a strange PSX multiplayer roguelike (of sorts) with both cooperative and competitive elements. Worth checkin' out though it'll lose a lot without human copilots, but the soundtrack still slaps.

Hey cool! I will definitely check that out.

cmdrk
Jun 10, 2013

TooMuchAbstraction posted:

Thanks, that's helpful!

On a different note, I knew this would happen eventually:
https://twitter.com/byobattleship/status/1418208902483570691

I've reported the review for being off-topic. Any other suggestions for actions to take? Ways I can leverage this?

I bought your game based on the historical accuracy of the flying train boat, laser weapons and the shield that literally stops time. I was loathe to discover that the game was not completely full of predominately white male sailors fighting Hitler, or fighting for Hitler.

I am a chud, and this is my story.

e: Semi-seriously, you should just lean into that guy's bad review, even better if you can piss off more idiots. Any press is good press.

cmdrk fucked around with this message at 16:04 on Jul 22, 2021

cmdrk
Jun 10, 2013

Your Computer posted:

fwiw GDscript is incredibly simple and straightforward - you learn its quirks in a couple of days and from then on it's just writing code. I was originally struggling to get into Godot because I insisted on using C# (a language I have experience with) but it really only made things more complicated - it's less well documented than GDscript and has its own quirks due to how it's integrated with the engine, and the majority of the time you're just using engine-specific methods and structures anyway so the language matters little. Trying to find out how to do some Godot-specific thing, googling and only finding GDscript examples and trying to figure out how to translate that to C# got old real fast, but once I switched to just using GDscript everything was smooth sailing.

I think GDscript is a real joy to use as a sort of "Python lite". For my multiplayer tactical combat thingy, I was really happy with how fast I could whip up movement code, UI stuff, etc. The Godot developers also seem really happy with it, as well, so I think it's going to be around for a while. FWIW, there's some useful info here about what will change in 4.0: https://godotengine.org/article/gdscript-progress-report-new-gdscript-now-merged. Happily it doesn't look too radical.

meanwhile I've undertaken a huge diversion from directly gamedevving by attempting to write a standalone interpreter for a subset of GDScript in Erlang :v:. spoilers so you can conveniently skip over my dumb ramble about why i think this is a cool and good idea.

I think BEAM languages (erlang, elixir, etc) have a lot of unexplored potential in supporting multiplayer games. There are a few presentations floating around for using it for stat tracking, chat, etc. And recently I saw that the X-Plane guys wrote an implementaton of Raknet in Elixir which scaled really nicely for their workload. But I'd really like to use the language directly in, or adjacent to, my game logic. Writing account management, a lobby, match instances, etc has all been pretty straight-forward and seems to work well.

The problem is when I have to re-implement large parts of the game logic on the front-end in GDScript. so I decided to try a different approach of just implementing what I need from GDScript as an Erlang module. Of course, it turns out this is a rather large undertaking so I've spent the last month or two of free time writing a lexer, parser, and interpreter. It's actually making progress and it's kind of exciting to see control flow, expressions, statements, etc working semi-correctly.

I'm hoping some day I can kind of evolve this into something that looks like an open source replacement for BYOND. I'd love to be able to have a service where people can sling GDscript-based game logic at a server that handles all of the account stuff and persistence for them, while sandboxing execution time, memory usage, prevent OS callouts, etc. dreams.txt :toot:

cmdrk
Jun 10, 2013

Zaphod42 posted:

Okay I got the basic gameplay loop working

https://www.youtube.com/watch?v=eQMS6NZYBck

Now to just build out the level and polish the controls!

Gonna spend some time trying to get a really nice cartoony grass shader going so I can really sell that Ghibli style.

That's looking really nice! Did you whip up all of those assets yourself?

cmdrk
Jun 10, 2013

Odd Mutant posted:

Yeah, I don't know how I feel dedicating a lot of time learning a language that is tied to a single piece of niche software. Especially one that is limited to where it's software can be published to without having to work with another company. I'd like there to be some sort of potential for a career here. Like I said, I worked with Clickteam Fusion for a while and now it's a bunch of dead experience working on dead projects, tied to a piece of dead software. That sucks, and I do not want to repeat that.

So I guess that means Unity? How much harder is it to work with Unity?

FWIW, my understanding is that C# is fully supported within Godot - I think Microsoft gave them a grant to do this. Almost all of the examples in the docs have C# equivalents I believe - I guess you will be stuck translating stuff from random internet tutorials if you go that route though. I wouldn't necessarily be dissuaded from Godot just because C# isn't most people's first choice.

I found Unity to be really clunky personally :shrug:

Maybe check out a platformer or whatever genre tutorial for Unity and then one for Godot and see which feels better?

cmdrk
Jun 10, 2013

megane posted:

high quality :words:

I know you were posting this for TMA but this was super useful for me too. I like the technique to harmonize your palettes, would've never thought of that.

cmdrk
Jun 10, 2013

Triarii posted:

The weather is also dynamic and it'll vary from clear to cloudy over time, sometimes getting up to full rainstorms.

https://i.imgur.com/m25oeF6.mp4

more games need this, with some nice rain pitterpatter sounds and the occasional thunder. that looks great!

cmdrk
Jun 10, 2013

Coldrice posted:


Remove a bullet - if you get shot and have a knife you have a chance to remove a bullet, healing you or hurting you if you fail



as others have said, that bullet removal minigame is intense but it's pretty juicy and worth keeping somehow IMO. i felt some genuine apprehension watching the ad-hoc cowboy surgery, and that's awesome.

Adbot
ADBOT LOVES YOU

cmdrk
Jun 10, 2013

anothergod posted:

Can we talk about random dungeon generation? I've already come up w a way to create random dungeons with a node based graph, so I'm specifically interested in converting that to world space. But I'm also interested in hearing people's experience with getting into this.

I am trying to find it now, and maybe someone else in the thread can dig it up, but there's some very good information out there on how Spelunky procedurally generates dungeons. Derek Yu, the creator of Spelunky wrote this book: https://bossfightbooks.com/products/spelunky-by-derek-yu. I'm guessing I'm remembering excerpts from it.

I wrote a Wang Tiling library (of sorts) for my game when I was building a drug-themed game taking place in a city. It's a snap to ensure all tiles are connected simply by flood filling and throwing out bad tiles.

For my current project I'm considering using Wang tiles to lay out my boards in a "macro" sort of way, by designing relatively large set pieces (10x-25x larger than the player?), which themselves contain rooms, treasure, doors and what not, but also have major edges that match up to Wang tiles. I'm a bit worried about samey-ness, but we'll see.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply