[Game Dev] I don't have a publisher. What I do have are a very particular set of skills.

1899091929395»

Posts

  • CornucopiistCornucopiist Registered User regular
    edited August 27
    Zek wrote: »
    Kamar wrote: »
    It's kind of interesting, noticing how different the mindset for developing skills is between creative writing and game dev.

    Most modern writing advice will tell you that if you don't read short fiction and don't want to write short fiction, you shouldn't write short fiction (advice was different in years past, where short fiction was an important step on the path to publication).

    Pretty much every game dev advice along those lines is the opposite, i.e. you should make a million little casual games before you do anything else.

    Of course, I can see the reasons for it to some extent, how to program a health system and respawn logic for Space Invaders carries over to a AAA MMO cleaner than, say, writing a character for a 5000 word story does to writing a character for a 100,000 word story.

    Though a lot of indie dev advice also seems heavily focused on programming rather than making games. Feels like the majority of hobbyists I've seen seem more interested in taking on unique programming challenges than completing a game. edit: Feels like maybe I'm letting my frustrations cast shade in a way I didn't mean to. More accurate to say that I've found it easier to find discussion and advice on the programming aspects of development/development of games that rely on more intricate programming than, say, in-depth discussion of the nuance of different ammo economies.

    All this to say that I'm still occasionally second-guessing just jumping into what I wanted to make first (well, something a bit lighter but with features that will carry over almost unchanged into a later project) instead of trying to remake pong etc. But not so much that I'm changing course.

    Anyway, I'm off work today and have nothing on my schedule, so I think I'm going to try to put 8-10 hours into getting this first level somewhere close to done (gameplay/story/etc-wise, aesthetically it's lol). Scope of it crept quite a bit and I lost some energy once I had to start making decisions, but it's all been to its benefit.

    Well I don't think anybody is really saying that you should make games you don't give a shit about. But in game dev there are a ton of logistical issues with making a big ambitious project by yourself. Like if your dream is to make a AAA MMO as a hobby project... that's impossible. Perhaps you're more realistic and your dream is to be hired to work on said MMO - even then, completed projects are likely more impressive to a recruiter than abandoned moonshots, and it's important for motivation to have goals that are attainable.

    I am doing both as an amateur, and really feel that shipping/publishing is half of the skillset.
    -Making small games and writing short novellas is a good way to practice the art of finishing.
    -Having a release is a nice bulwark against imposter syndrome from which you can self-critique without losing motivation.
    -Gets your obsession out of the way and allows you to move on to something that might suit your talent/proclivities/capacities better.
    -Game specific you experience the whole life cycle, figuring out why and how to get reviews, build for dev videos, link to social media...

    Against that, the churn of modern Indie publishing in both writing and games. You will absolutely be competing with people who are natural born or experience grown marketers why put 99% of their effort into marketing a pizza box with pasta glued on.
    So, never read the reviews in this day and age translates to never check your KDP stats or downloads. You justn'eed to care enough about the consumer to see if your marketing works. Write/dev for yourself.

    But finish, and publish, and start over. Smaller/shorter games and books will make that easier.

    Cornucopiist on
  • KamarKamar Registered User regular
    I'm been dipping my toes into Blender and animation in UE and I'm Not Having A Good Time, but I know there's a very good chance my sibling doesn't have the follow-through to do their part when the time comes and it's useful for prototyping stuff, so...

    It's weird, because looking at all the pieces of the process it should be the kind of thing I pick up quickly, even if I don't have the artistic sense cultivated to make good use of it.

    But instead I just feel like I'm drowning at all times.

  • CornucopiistCornucopiist Registered User regular
    Kamar wrote: »
    I'm been dipping my toes into Blender and animation in UE and I'm Not Having A Good Time, but I know there's a very good chance my sibling doesn't have the follow-through to do their part when the time comes and it's useful for prototyping stuff, so...

    It's weird, because looking at all the pieces of the process it should be the kind of thing I pick up quickly, even if I don't have the artistic sense cultivated to make good use of it.

    But instead I just feel like I'm drowning at all times.

    Blender has a pretty steep learning curve at first, especially the fiddly UI regarding creating and shifting view windows, or getting stuck in a mode where you don't find the button you need.
    Don't know UE but if it uses state machines for animation, that's also likely to be idiosyncratic if you're used to simple keyframe animation. Adding inverse kinematics etc. makes for much more frustration...
    I don't know if that ever stops unless you are a dedicated animator, it's always been my weak spot.

  • CornucopiistCornucopiist Registered User regular
    edited September 3
    So, an update! I've returned to my previous grid-based UI frontend, and simplified the back of it a lot (who needs a command queue? probably me but it's gone!).
    I updated the movement to go north-south - east-west and the purple is where I started on the selection of a mapsquare. The idea is that you will move that selection around, with the camera following. I'll use a brighter material to highlight the selected mapsquare, which is why the purple (that just deletes the existant material)

    6p69gnyxhws8.png

    That's it for now, pretty easy after implementing the UI, and once I have the highlight material working, I can add a button that both creates a 'tiling' and instantiates the prefab specified in it across the whole map wherever that tiling applies. That functionality is mostly already present, but it'll conclude the 'port to mobile' journey.
    I hadn't gotten around to creating an 'identity card' for the tiling, which will be next. That'll be a less clunky way to set up the different attributes of a tiling. And at that point lots of testing to fill the map with tilings, save, load, repeat.
    Then I have to add in an 'undo list' of tilings to have some undo levels on the map, and a UI to just see the existing tiling identity cards in a grid and delete them from there. Those are quality of life issues, and I'm going to have to start looking at the map generation again where I left some feature creep unimplemented. No use looking far beyond that, but I might be able to get it in shape enough to present it at a local gamedev group, which I'm sure will trigger 'oh you made a bad clunky *existing asset*'.

    Cornucopiist on
  • KamarKamar Registered User regular
    I'm having trouble figuring out the right point between 'this boss never fucking lets up or gets off you' and 'this boss just stares at you glassy-eyed sometimes' with my first boss.

    Might just be that any time he's not moving, instead of feeling tension or thinking about what I should do next to defeat him, I'm wondering what his AI is doing and wondering if he's staring too long or realizing I need to make some of his idle animations unable to play once he's aggroed since if he's close enough to hit me but has no attacks available for a split second he enters the Idle animation state which can fire off looking around or snuffling the ground or...

    It's tricky, because my feeling that my zombie-like enemies were too pathetic and too easily ignored ended up being completely disconnected from how anyone who playtested the first little bit for me actually experienced them.

    Which I guess makes sense. I went and watched a no-hit run of RE2make and it was pretty similar to how I interact with my own zombies, just zero threat, walk around them, walk through them during some animations, etc. Same as how you interact with Dark Souls mobs after a bit, just jogging around doing what you need to do, annihilating any hollows that get in the way without really caring about what they're trying to do.

    But knowing that I can't perceive it clearly doesn't magically make me able to tell how others will, at least not yet. Maybe with more experience. Maybe I need to set a 'dev difficulty' that makes everything but the player move faster.

    Probably would be a good idea to add some pattern where it would intentionally get some distance for...something. Maybe run around a bit to build up speed then do a high speed line charge that doesn't track? Since it really does glue itself to you at the moment. It's crazed and cursed so maybe it just randomly gets distracted to attack things in the environment.

    Maybe I'll let him be this aggro but give him a stamina system. Or, rather, use the token system that's meant to keep multiple enemies from overwhelming you. Make 'breathing heavily in place' his least favored 'attack' but his only one that costs zero tokens and make tokens return slower than they normally would.

    At least I was able to make use of the animations and whatnot that came with this random free pig asset to make something that genuinely feels like a decent boss. Speeding things up, slowing things down, adding and adjusting root motion as needed, allowing tracking during certain parts of animations but not others. Like there was this one 'combo attack' animation where it walks forward swinging its head right and left and finishes with a leap. Realistically the leap was pointless, either the head swings got you or you just watched it wander away, leap at nothing, and awkwardly turn around since it lacked any kind of turn-in-place animations.

    So I made it so that during that jump, it can rotate despite being in an animation montage that would normally prevent that AND gains the ability to rotate far faster than I allow it to on foot. So now the jump is repositioning instead of just an awkward waste.

    Of course, for the way my game works, just making a boss that would fit in a Soulslike is only part of it. Need to make it so you can do interesting stuff with the environment and spells based on information you've picked up previously. So plenty of work ahead. But hey, progress.

    Maybe I'll be willing to show my work here soon, even if it's still all ugly as shit.

  • KamarKamar Registered User regular
    It's maddening how much time I've dedicated to a relatively tiny problem.

    I don't want my boar boss to turn in place if it ends up faced away from the player, I want it to run forward and arc around to face the player again.

    Somehow this is the one problem where no one has a quick solution to offer in the Unreal Source discord. You would think that since cars and the like need to move this way, someone would have a quick response.

    So now I'm experimenting with having the enemy detect that it's facing the wrong way and using a running turn animation with root motion to get back around (it overshoots or undershoots), using Unreal's EQS system to find points at the corner of a cone to move to until it's turned back around (it pauses at each point), or moving along a spline (I'm working on this now, I'll try a tiny little bit of curve reused until it hits the proper facing and dynamically adjusting a single spline to follow to the correct facing, not sure how I'll make it avoid running into trees and stuff).

    I should just ignore it, this is hardly an impediment to getting this level passably playable, but now I'm in too deep.

  • KupiKupi Registered User regular
    I'll say this: if it's your first boss and it doesn't feel difficult enough, leave it right there until multiple people who aren't you issue the same complaint. Very few people are going to complain if your first boss is a cakewalk (and those who would should be ignored). But they will absolutely complain if it's too hard. Even if you later succumb to "difficulty that was tuned to challenge the devs", people will appreciate it if it kicks in later (ideally, after the Steam refund window...........).

    My favorite musical instrument is the air-raid siren.
  • KamarKamar Registered User regular
    Kupi wrote: »
    I'll say this: if it's your first boss and it doesn't feel difficult enough, leave it right there until multiple people who aren't you issue the same complaint. Very few people are going to complain if your first boss is a cakewalk (and those who would should be ignored). But they will absolutely complain if it's too hard. Even if you later succumb to "difficulty that was tuned to challenge the devs", people will appreciate it if it kicks in later (ideally, after the Steam refund window...........).

    It's not difficulty in this case, just a question of what that pause of action feels like to someone who isn't me, the person who knows that means cooldowns lined up and the boss doesn't have anything to do.

    That said, I went ahead and took its idle breathing animation, lowered the head, sped it up, and looped it a few times to reuse as an 'exhausted breathing' thing that will kick in when it has nothing else to do.

    I also have a tolerable arcing turn solution worked out, ended up going back to the EQS system and figuring out how that was supposed to work with my behavior tree smoothly (I was running the query in a sequence with the moveto node, when I needed it to be attached to my moveto node as a service that runs a few times per second to update the location it's aiming for).

    Still need some mandatory effects (a dust cloud or something to show the radius where you'll be affected by it's jump attack isn't just aesthetic, for example) and then to set up stuff like environmental exploits/a tailored spell/the clues throughout the level that lead to those things. Also want at least one alternative way to get through the level working and to replace some of my temp dialogue.

    Biggest problem that I know is just straight up Wrong isn't easily fixed at the moment, which is that the scale of this last bit of level is way off. Takes way too long to walk from one point of interest to another, especially if you have to walk back. Just have to let it be a problem until it's time to redo things to look nice. Or add some sort of traversal thing for this section of the map, I guess.

  • KamarKamar Registered User regular
    edited September 8
    Back to long sessions again after getting over the thing that was holding me up--I talked about it as a problem I was aware of but just needed to ignore until it was time to remake it properly, but it really was freezing me up to know I'd made part of the level too big and that it was going to feel bad no matter what.

    Fortunately, with the help of someone on the Unreal Source discord (Mathew W, actually, who has a pretty widely-recommended Youtube channel for UE4/5 guides) I was able to figure out how to get the lasso tool to actually grab everything in the box, even stuff that was occluded, so I could grab entire buildings and their contents, put them in folders like they should have been from the start, and move them around while walling off a lot of the wasted space.

    Turns out that as soon as I knew I could fix that it was easy to gogogo again. Should have this section finished up today after moping around on it for much longer than it warranted.

    Kamar on
  • CornucopiistCornucopiist Registered User regular
    So, my game editor broke in a big way. I vaguely remember implementing a specific thing; dual materials for each gameobject, one dark, one lit, to show the selection. And thinking- I'll just implement that on the first level of map generation to test the new movement script.
    Well, that obviously broke using the higher levels of map generation, which each add complexity. But I couldn't track down exactly where this happened.

    cqyilbe6ic2n.png
    (illustration of a broken map fill)

    Turns out when refilling the map, if the code that generates map types (ints) would return an older hardcoded map type, the refill function would empty the spot in the array that stores the map, but then not fill it.
    That took a lot of tracking down, and then I had to figure out exactly where I was getting the hardcoded ints from.
    And that let to this audit result:
    step 1: start typefromXY
    step 2: inside typefrom XY :get Biomeresult. Default result is 902
    step 3: inside typefrom XY :return if mapfillselector = 0; As 
    step 4: inside typefrom XY : get citymaptype. Default result is 904 
    step 5: inside typefrom XY : inside citymaptype: get int hGrid.LineValue.  default is 'currentvalue' is 904 set by citymaptype
    step 6: inside typefrom XY : inside citymaptype: inside hGrid.LineValue: get *MapSquareState* hgrid.getState. 
    step 7: inside typefrom XY : inside citymaptype: inside hGrid.LineValue: inside hgrid.getState: First Default if (originalType == 0){return new MapSquareState(0);//skip the whole thing;}
    step 8: inside typefrom XY : inside citymaptype: inside hGrid.LineValue: inside hgrid.getState: Second Default is lineType new MapSquareState(55150)
    step 9: inside typefrom XY : inside citymaptype: inside hGrid.LineValue: inside hgrid.getState: return if (position == mapClosest) is lineType (55150)
    step 10: inside typefrom XY : inside citymaptype: inside hGrid.LineValue: inside hgrid.getState: set startNode = GridNodeFromGridPos(closest);
    step 11: inside typefrom XY : inside citymaptype: inside hGrid.LineValue: inside hgrid.getState: get  test = findPixel(startNode, position). default is 911
    step 12: inside typefrom XY : inside citymaptype: inside hGrid.LineValue: inside hgrid.getState: inside findPixel: get HexFill(startNode, position). default is new Vector3Int(999, 99, 99);
    

    and hexfill is only the first of several functions that end up creating the map.

    Now there's a lot to deal with here...
    -First off, the result of all of this is a single int, mapType . I first get that from 'Biome' which is the default. All of the later functions end up overwriting that single int, or returning the original int.
    -Secondly, this mess grew organically, and there are several layers I don't need. Citymaptype and LineValue don't really do anything.
    -Third, the intent was to at one point have a table that allows checking which mapType may overwrite which mapType. So that the hexBridge function can draw over the canal generated by the original hexFill function.

    So, a big change has to be made. MapSquareState will become MapType. And MapType will become a list of ints. I will set these to 1 as the 'unset' value, then start from the bottom to the top adding the biomes, canals and seas, hex infills (simple), hex infills (complex), hex borders (lines), and then internal canals with lines, bridges with onramps, and finally, in the future, 'stamps'.

    So storing arrays (or lists) in an array, always fun. One good thing is that I won't have to rerun my map generation functions each time I refresh the map, instead the map refresher will poll the selected drawing level, and then do the thing to 'draw' i.e. put the right prefabs in the right places.

    That said, all the while this will all be broken, because I won't have found my original bug. i know that the bug should be due to the hardcoded mapTypes no longer corresponding to the prefabs made from CSV file defined types. For example, I hardcoded 100 as 'sea' and that is now 99100.

    But, changing the CSV values, as far as I remember, did not cause the bug. Creating the prefabs from a class with the new dual material caused the bug. But I also don't think that adding dual material to all the prefab types is going to fix the bug... fun!

  • ZekZek Registered User regular
    edited September 11
    I finally finished my first web game! I'm having some DNS trouble with my domain, but I'll post more details and a link soon. I ended up building a web version of Poetry for Neanderthals for playing over Zoom, and I'm really proud of the results.

    I'll do some more UI polish soon, but I'm planning on keeping it fairly utilitarian since UX isn't my speciality. If you don't know the rules to the game it might not make much sense, but it's pretty fun!

    https://youtu.be/rHji9ysnr3A

    The app is built on Next.js with Redux, and hosted on Firebase to sync data changes across clients. I've got user authentication and OAuth providers, but it's optional for creating/joining a lobby. I put a bunch of work into nice-to-have features, and separating out game logic from common functionality for future re-use.

    I've got some more ideas for future projects I want to pursue next, but I made a push to finish this project first because I knew it was important. I really hit my stride towards the end as the months of architecture prep started to pay off, so I think I can start pumping things out pretty fast now. Stay tuned!

    Zek on
  • CalicaCalica Registered User regular
    edited September 11
    @Cornucopiist I initially misread "hexfill" as "hellfix" and thought "yep, I've seen written some functions like that :P"

    Calica on
  • ZekZek Registered User regular
    Alright I think we're good, here's the production link: https://social.kindafun.games/

    If anybody does Zoom hangouts etc and is up for trying a new game, I'd love to get some playtesting! We had a lot of fun playing this game in our hybrid work socials, with a much jankier implementation than this. This is the first place I'm posting it so I'd appreciate even just poking around with multiple devices, iOS in particular since I've only tested on my Pixel. You can go through a game solo or with all players in one team for co-op.

  • CornucopiistCornucopiist Registered User regular
    Zek wrote: »
    Alright I think we're good, here's the production link: https://social.kindafun.games/

    If anybody does Zoom hangouts etc and is up for trying a new game, I'd love to get some playtesting! We had a lot of fun playing this game in our hybrid work socials, with a much jankier implementation than this. This is the first place I'm posting it so I'd appreciate even just poking around with multiple devices, iOS in particular since I've only tested on my Pixel. You can go through a game solo or with all players in one team for co-op.

    The 'create lobby' button was greyed out for me, had to create a profile on the top right, just used my Gmail account.

  • GlalGlal AiredaleRegistered User regular
    https://unity.com/blog/unity-is-canceling-the-runtime-fee
    A message to our community: Unity is canceling the Runtime Fee

    After deep consultation with our community, customers, and partners, we’ve made the decision to cancel the Runtime Fee for our games customers, effective immediately. Non-gaming Industry customers are not impacted by this modification.

  • PhyphorPhyphor Building Planet Busters Tasting FruitRegistered User regular
    Not super surprising, they're still down 90% from their all time stock high, it was an "everyone disliked that" moment and their financials haven't improved

  • ZekZek Registered User regular
    edited September 12
    Zek wrote: »
    Alright I think we're good, here's the production link: https://social.kindafun.games/

    If anybody does Zoom hangouts etc and is up for trying a new game, I'd love to get some playtesting! We had a lot of fun playing this game in our hybrid work socials, with a much jankier implementation than this. This is the first place I'm posting it so I'd appreciate even just poking around with multiple devices, iOS in particular since I've only tested on my Pixel. You can go through a game solo or with all players in one team for co-op.

    The 'create lobby' button was greyed out for me, had to create a profile on the top right, just used my Gmail account.

    Ah thanks, a player name is required but the error UI is pretty subtle. I'll add an error message and a default value. Now that I look at it in light mode, the text input also doesn't look much like an input which was probably your issue.

    Edit: Fixed!

    Zek on
  • LD50LD50 Registered User regular
    Phyphor wrote: »
    Not super surprising, they're still down 90% from their all time stock high, it was an "everyone disliked that" moment and their financials haven't improved

    It's clear where their future intentions lie.

  • KamarKamar Registered User regular
    Damn, I decided to poke around with my lighting and post-processing because I was at a bit of an impasse on other stuff I was working on, now it's hard to turn my brain off and ignore it to get back to the other stuff.

  • CornucopiistCornucopiist Registered User regular
    It's taken blood sweat and tears but the spaghetti code has been refactored, and I now have my hexes back:
    9hdp0txybd54.png

    That said, I barely understand the code that generates these, let alone the line bundles. Been too long since I wrote it. Presumably, I can work my way down the calls to resurrect those, too.
    But something is wrong in the code that takes the mapType int and matches it to a Tiling, or the code that then adds the wanted prefab. It still doesn't survive a result that it cannot find in the lists.
    So the next step should be to create some failsafe defaults for those functions that I can also spot easily.

  • KamarKamar Registered User regular
    Every time I see a low poly model quickly thrown together by someone else, I'm stricken by two thoughts back to back:
    • Maybe I could learn to do this right after all without messing up my rhythm, instead of just surrendering immediately and actively aiming for trash nonsense when I need a filler model
    • No, you moron, don't undervalue the skills of others, you will drown if you enter those waters, only commit to that if you have no other choice after everything else is done

    I don't think either thought is completely wrong, so I guess I should aim for 'actually try to make it look right, but if it's not working just move forward with whatever you've got anyway' so I can at least attempt to develop that skill.

  • CornucopiistCornucopiist Registered User regular
    Kamar wrote: »
    Every time I see a low poly model quickly thrown together by someone else, I'm stricken by two thoughts back to back:
    • Maybe I could learn to do this right after all without messing up my rhythm, instead of just surrendering immediately and actively aiming for trash nonsense when I need a filler model
    • No, you moron, don't undervalue the skills of others, you will drown if you enter those waters, only commit to that if you have no other choice after everything else is done

    I don't think either thought is completely wrong, so I guess I should aim for 'actually try to make it look right, but if it's not working just move forward with whatever you've got anyway' so I can at least attempt to develop that skill.

    I don't think basic modeling skills are something you can totally avoid.
    Even if you buy models from elsewhere, you likely have to clean them up, fix the UVs, check the rigging etc.
    For freebie models that's a certainty.

    I always feel modeling from scratch is quicker than cleaning up models from elsewhere.
    But then I came to gamedev from the 3D modeling side...

  • KamarKamar Registered User regular
    Kamar wrote: »
    Every time I see a low poly model quickly thrown together by someone else, I'm stricken by two thoughts back to back:
    • Maybe I could learn to do this right after all without messing up my rhythm, instead of just surrendering immediately and actively aiming for trash nonsense when I need a filler model
    • No, you moron, don't undervalue the skills of others, you will drown if you enter those waters, only commit to that if you have no other choice after everything else is done

    I don't think either thought is completely wrong, so I guess I should aim for 'actually try to make it look right, but if it's not working just move forward with whatever you've got anyway' so I can at least attempt to develop that skill.

    I don't think basic modeling skills are something you can totally avoid.
    Even if you buy models from elsewhere, you likely have to clean them up, fix the UVs, check the rigging etc.
    For freebie models that's a certainty.

    I always feel modeling from scratch is quicker than cleaning up models from elsewhere.
    But then I came to gamedev from the 3D modeling side...

    Yeah, I know someone needs to model and animate even if you're buying both. The initial plan was just that it would be Not Me doing it.

    The good news is that I've finally stopped spinning my wheels and committed to a particular approach to resources for my magic system, at least committed enough to implement it and see how I feel about it over the course of a full level, which was the last thing I needed to solve before I could start making serious progress again.

    Environmental magic alignment and intensity determines which normal spells you can cast for free (which includes, like, needing to rely more on block or dodge depending on the environment since the other might not be free), limited supply of personal mana (which doesn't regenerate on its own) which lets you cast other base spells, ammo/catalyst system (with some catalysts being for a few different spells) for the very strong versions of spells. Then make quite a few enemies that can be downed or otherwise disabled or avoided for a while for free, but require resources or some environmental interaction to put down for real.

    I'm a little tempted to make it so that you just have a 'defense' button that blocks or dodges depending on what the environment favors, and have your free attack change between two options the same way, but options are nice if I can keep it from being annoying to control...

  • CornucopiistCornucopiist Registered User regular
    Well, that was a struggle.

    The previous hex generation code was set up to run three checks one after another, each with a startnode slightly offset. These checks returned a result only if it found the pixel to be in certain relation to the start nodes of the hex. I overlooked the case where almost all pixels are 'above' the lowest startnode checked. I used to have a maximum value for that beyond which no result was returned but that got lost somewhere along the way.
    This caused me to lose a day of free time just to hunt down that specific bug.... But having done so, I now have glorious line bundles lining my hexes! Well, on some, that is, but I think the debugging of that little issue is going to take me less time. (famous last words).
    During the debugging I removed one level of functions, againt simplifying my code. And while I hope to soon return to the load/save and UI features, the next time I look at the map generation, the code should be a bit easier to grok.

    yudd9khrwjnm.png

  • CornucopiistCornucopiist Registered User regular
    So, fixed the lines. Removed the dual materials for select/unselect from where I had them and added them to the prefabs list. Given that prefabs may have multiple children made them lists.
    Set the UI up to display the selected prefab's identity photp and name.
    Set the walker up to update the 9grid shown in the UI. Poll the lines and biomes for colors that match the ,9grid types.

    And then we get this
    Started this madness 3 years ago but it's starting to come together.

    Next up is a button to add prefabs onto the map, which also creates tilings, etc...

    https://youtu.be/w6aNn8KL_tw?si=w2Vml4UuluaGs8Ih

Sign In or Register to comment.