/agdg/ - Amateur Game Development General

Just Like Make Game

(You probably don't need to) SAVE THIS FILE (any more): Anon.cafe Fallback File v1.1 (updated 2021-12-13)

Anon.cafe will shut down as of 00:00 UTC on 15 March 2024. Announcement here.

Max message length: 20000

Drag files to upload or
click here to select them

Maximum 5 files / Maximum size: 20.00 MB

Board Rules

(used to delete files and postings)

6/6 GAME JAM Planning / 2D Platformer Research Thread Newt Board owner 05/11/2023 (Thu) 10:31:58 No.603
Alright faggots, as I mentioned in the meta thread recently, I would like to start doing board game jams on a regular basis. Unlike other jams that just give you a theme and a ridiculously short deadline and then you're on your own, the game jams here will come with a ready-to-go, runs out-of-the-box codebase so that any participant will have a working, playable game from day one (however bare-bones and exactly like everyone else's it is). You may choose to use the provided code base if you want, but you're free to bring your own as well. Think the code is ass? Does something you don't want or need? Rewrite it then, I don't care. The provided code is simply to bring as many people up to speed as quickly as possible, as well as to provide a common ground for collaborating with and assisting one another. The first /agdg/ Game Jam game will be making 2D platformers - no theme or gimmick restriction, it can be whatever. The provided game skeleton will use Raylib for graphics, sound, and input, and be written in an easy-to-grasp subset of C++ (nothing fancy or hyper-efficient). The Jam will officially start on June 6th, 2023 (6/6) and run until July 7th, 2023 (7/7), one month. By start, I mean a thread will be created and the code base, along with building instructions will be provided on that day. You are free to do whatever prep you like in the meantime, of course. 7/7 will be a "demo day" of sorts, where everyone uploads their games for others to play, and an informal competition will take place to decide the best game. I say "competition" but it's just for fun, maybe we'll come up with something stupid for the winner though. >why? For fun and practice. Do I expect any masterpieces in a month? No. Will anyone make a "real" game to put up for sale or something? I highly doubt it. What I would like to see though, is everyone at least trying - hence lowering the barrier to entry as much as possible. Can't program? Learn, you've got a whole month. All code provided will be straight-forward and well-documented as to which lines are doing what, start by tweaking that. Can't draw? See itch.io and similar for free assets. Can't do sound or music? Again, itch and the like. Do I want to see a whole bunch of Super Mario-clone asset-flips? No. Take the time to try to do something new or do something well. Can program but can't do art? Spend the month developing your art skills and pipeline, even if it means a barebones game program-wise. Are you an artist but can't code? Take the month to learn to code or collaborate with someone who can. Can do everything? Awesome, show us something new then, a novel gameplay mechanic, setting, original character, whatever. I want to see everyone push the boundaries of their skills, using the provided code as a springboard if they like. In this thread I will be gathering ideas for what constitutes the "barebones platformer", and posting my research on that, experiments, and other progress on this project. I would also like to see the thread used for general 2D plaformer discussion. What's out there? What have you played? What's state-of-the-art? What are some cool mechanics you know of? Styles - low-res/pixel, high-resolution, limited-palette, tile-based, pseudo-3D, you name it.
Open file (169.92 KB 1920x1047 tiled_shapes.png)
Open file (148.70 KB 640x480 nonrectangular.jpeg)
Open file (105.29 KB 1200x681 drawn1.jpg)
Open file (621.85 KB 1400x700 drawn2.png)
>>630 >>631 >Get too specific and participants end up constrained without any room to stretch, too general and the less able participants pancake against the very start of the difficulty curve. For sure, there is definitely a balance to aim for somewhere between "hello world" and a complete game. >It really depends on what gameplay possibilities you want to load into the base toolkit you're creating. I really don't want to constrain anyone's gameplay possibilities. That's one reason I'm trying to keep the criteria as broad as possible. I haven't even defined what a 2D platformer is. As long it's from a side view and you move around a 2D screen, I don't really care what people make. Sonic-like? Metroidvania? Shooting game like Alien for the SNES or Jurassic Park for the Genesis? VVVVVV-like puzzler? Game with vehicles? Terraria-clone? Go nuts. >levels >This starts to get into too-specific territory, but I think including a basic implementation would go a long way towards getting people started. You think? It's actually kind of involved, loading a level, its map, graphics, enemies, pickups, level-specific logic or scripting, and then unloading it all (without memory leaks) to move to another level. My idea was a Level() object that would be loaded from xml, with 2 or 3 of them to show how to handle that. A basic "game" could then be: new game -> load world 1-1 -> beat that -> load world 1-2 -> beat that -> load world 1-3 -> beat that -> game over. congratulations. A "level" would only be 2-3 screen lengths (or heights) long and can be whipped up in Tiled in minutes. What did you have in mind? >It'd be especially good if the monster used the same state machine system as the player. Can't guarantee it'll be that generalized but I can try. I'd like to think the player state machine would serve as an example for implementing enemy or level/world state machines in case I wasn't able to. >Maybe you already addressed this, but what about sound and music? I did not, though I had thought of it. I'm still looking around for good stuff but year, BGM will play (maybe level-specific), and sounds will be used where appropriate (on jumping, collecting something, attack/explosion, death, etc.). >I know you don't want to do a theme beyond "maek platfoemr" but I think it might be a good idea. The goal was to keep it sufficiently broad, while still keeping everyone mostly "on the same page." I'd like it if people were able to share both high-level approaches and algorithms as well as implementation details, hence constraining the game type and framework (Raylib). Both are optional, though, if you really want to do something else or are more comfortable with a different framework. I figured some small subset of people might be turned off by those constraints, and adding a further one - theme, might turn off yet more people. But who knows. It's the first time, I have no idea how many people will participate and no idea how it'll turn out. I just hope the jam can garner some interest and be fun and educational. That said, I'm open to suggestions. Did you have a theme in mind? What do you think would be fun to do? >Really admire what you're doing here, by the way. I'm fully bogged in the jungle quicksand of my own game but perhaps I'll find time to make a little thing for this too. Thanks. What are you working on? >Picture unrelated Nice fox butt. >They need not be projectiles, but having examples of the create/move/do-something-on-collision/remove cycle would be a good thing. Projectiles happen to be a very simple case, so perhaps they're a good thing to include in the standard example. Sure, that was the idea. Spawning something, updating/tracking it, doing something if it interacts with something, and destruction of it. >I think this goes way into "too specific" territory, and also provides more to go wrong. You may be right. I wanted to get away from my very-specific Mario-like that I've been playing around with and to a more general platformer framework, one that could support both old-school pixel/tile types as well as newer ones, with freely-placed objects and non-grid aligned colliders and graphics. I grabbed some pics of games that I'd consider not-tile-based, at least not wholly-rectangular ones. That's why I'd like to have examples for other collision types besides AABB - AABB. Tiled supports drawing collision shapes over maps as well, so I'd like to show how to import those and collide with them, provided they're properly convex. See first pic for what those triangles look like in the editor. In the exported XML they show up like so: <objectgroup id="6" name="Object Layer 2"> <object id="8" x="160.043" y="159.957"> <polygon points="0,0 15.913,15.9565 -0.0869565,16"/> </object> <object id="9" x="176.063" y="176.063"> <polygon points="0,0 32.0625,15.9375 -0.0625,16"/> </object> </objectgroup> You can add custom properties to these with values that get exported in the map file as well, so you could tag a volume as damaging, or collision shape as slippery, or whatever. I'll write up something about that then. But yeah, balance. Trying to make the skeleton of a game here, not necessarily a game engine. Appreciate the input and hope we get some more coming in eventually; I'd like to hear more about what people are interested in doing too, whether it's themes or mechanics or styles or whatever.
Open file (55.34 KB 250x250 what are birds.gif)
>>632 >I really don't want to constrain anyone's gameplay possibilities. I think it's important to distinguish between building something in and cordoning something off. Sometimes it's the same thing, but because you're making an example on top of a general engine a more able participant is still free to chop off some or all of what you've done and build in a different direction. Still, what you build in makes a big difference. It's obvious that different combinations of built-in capabilites allow different gameplay angles for the less programming-inclined participant. For example, choosing to not build in scrolling levels or projectiles means that someone who finds code intimidating won't be as likely to experiment with designs that include those things. Changing the effect of a projectile by changing an existing working example is very different to working the whole thing out for yourself, especially when you're of a skill level where that gap feels insurmountable. It also changes how the project feels to get started on, which is important for encouraging participation. >It's actually kind of involved, loading a level, its map, graphics, enemies, pickups, level-specific logic or scripting, and then unloading it all (without memory leaks) to move to another level. That's a very good point, and when put like that it definitely comes under plumbing - the stuff that everyone uses without thinking about how hard it is to get right. That's exactly the sort of thing it'd be helpful to include, it being a huge difficulty spike for the creator. >Did you have a theme in mind? Not at all, I just wanted to point out that sometimes little constraints like themes can be more helpful than a hindrance, encourage participation rather than discourage it. On reflection, the themes here are "platforming" and "2D", and that might be enough to get some responses sparking. >What are you working on? A dungeon crawler focused on exploration and short, sharp, satisfying bursts of tactical combat. >I wanted to get away from my very-specific Mario-like that I've been playing around with and to a more general platformer framework It's up to you. In the end, the main criteria for something like this is how easy and fun it is for someone to pick up and get started with, and how well it will tolerate beginners' nonsense (of which I know plenty, being one myself).
Open file (3.59 MB 1284x758 platform.mp4)
Open file (61.43 KB 544x623 bcR0A.png)
Open file (7.78 KB 111x106 8tzvN.png)
So I finally got moving platforms working right (more or less), at least a vertical one for now. I was running into a whole bunch of problems when contacting a moving platform, such as jumping up through it when colliding with it from the bottom while it was moving down, since colliding with it would set my y velocity to zero, then the next frame it would move down faster than gravity pulled me down, causing me to collide again, except this time with a negative y-velocity, which, when reversed, would move me upwards, through the descending platform... Anyway, I added a little something I had seen mentioned in a few places: "contact sensors" - points located around the usual player AABB. These points are collided with the surrounded geometry like the player AABB is, but unlike the AABB, instead of pushing the player away so the points are no longer colliding, their collisions are simply registered as "touching" the colliding surface, which allows us to set flags that change the player's position and movement temporarily. Take this ascii doodle from my comments for how mine look now: * |`````| | | *| |* | | |_____| * * * So now, colliding with a moving platform from the top will set the player position to just on top of the moving platform, just like any other collision with another AABB. After that, when the "sensors" are queried, the ones under his feet are inside the moving platform (one of them at the least), and we can now match the player position and velocity to the platform's. Since the contact sensors are checked every update interval, the player is free to walk or jump off the platform at any time, at which point the flags are updated and he is free to rise or fall or whatever like normal. See the video for this in action, and the pics for images I found showing what implementations look like. Also added BGM and a sound effect, but nothing really worth mentioning there since that was all extremely straight-forward. references: ht tps://gamedevelopment.tutsplus.com/tutorials/basic-2d-platformer-physics-part-2--cms-25922 ht tp://higherorderfun.com/blog/2012/05/20/the-guide-to-implementing-2d-platformers/ ht tps://gamedev.stackexchange.com/questions/141218/how-exactly-do-slopes-and-edges-work-in-this-scenario ht tps://www.raylib.com/examples/audio/loader.html?name=audio_module_playing ht tps://www.raylib.com/examples/audio/loader.html?name=audio_sound_loading
>>635 Apparently I didn't enable audio capture. Just use your imagination for now. Check out the raylib examples for how easy it is to get sound working too, it's pretty cool.
Open file (431.09 KB 1284x758 anim.mp4)
Not much to report on right now, still plugging away at this. A bit more work than I anticipated but should be on track to release as scheduled. Whether or not I spend the next month explaining the design decisions and code idiosyncracies is another story though, heh. I did have a huge favor to ask of someone, hopefully someone with some familiarity with raylib, or at least able to compile on windows for windows using Makefiles. I'm guessing the majority of people that might be interested in participating are running windows and using something like VS Code for editing. I'm on linux, compiling with g++ and targetting linux, so I can offer support there. I'm looking for someone who can support building on windows. I had the idea of installing windows 7? 10? in a VM and doing it myself, but I don't know if I'm going to have the time. I've uploaded an older test project here: ht tps://anonfiles.com/N4w5jdt5z9/05112023_anim_zip If someone can download that and get it compiled and running on windows, it would be a huge help. Output should look like the vid if everything goes alright. I'll answer any questions you might have the best I can; I have no real experience compiling on windows but at least I'm familiar with the code. >>633 >because you're making an example on top of a general engine Actually more like making a general engine. Raylib is a set of C libraries providing graphics, sound, input, file I/O, etc. The general program architecture, object classes, data structures, file formats, etc. are all on you to implement. So there's a fair bit of boilerplate. While I'm trying to keep the scope focused on "EVERY platformer will need this", inevitably there is also some "MY platformer needs this" thrown in there. >A dungeon crawler focused on exploration and short, sharp, satisfying bursts of tactical combat. Sounds cool. Care to write something about it? Got anything to show yet?
>>635 >>651 >no video sound again Starting to think this board doesn't support video with audio, gonna have to look into it.
>>652 I hear music in both, that last one is some heavy metal with a fancy keyboard. Maybe you have audio disabled in the options/settings.
Open file (42.90 KB 1191x746 mute.png)
>>653 Well shit. Guess the problem's on my end then. When I go to play videos back, it shows the sound being muted and I can't unmute it for some reason. See pic. >the options/settings Like, my browser settings? I don't have problems with any other videos but I'll try digging around. For instance, these videos I can hear fine: >>>/retro/772 Being mp4 and on the same site I thought I had fucked my encode up or something.
>>654 That's strange >Like, my browser settings? I meant the settings in the upper bar, pic related, but seems i remembered incorrectly because i thought there were audio options. If you want to confirm i suppose you can download your own mp4 and check it, personally i can attest there's audio on >>651 and >>635, but >>628 and >>627 don't have. I don't recall that kind of error happening to me, the browser sometimes puts the audio symbol in the tab and i mute it by accident but in your case the mp4 itself is the problem. Board options also don't include audio, that's bizarre, perhaps codecs?
Open file (33.46 KB 892x328 settings.png)
>>655 FUCK, pic related here
Open file (57.80 KB 462x687 encode.png)
>>655 Yeah, not seeing anything relevant in my browser settings. Here's my encode settings: H.264 and ogg vorbis. Downloading it and playing it works fine but, opening the local file in firefox has no audio. Going to play with my encoding settings I guess.
Open file (174.93 KB 650x1000 dungeon crawler.jpg)
>>651 >more like making a general engine. That sounds like a lot of work; thank you for putting in the time. I hope others will end up using it for the jam. >Got anything to show yet? Afraid not - it's all blocky filler assets and beans because everything for the past few months has been coming to grips with the systems that allow the game proper to be made. For example, the dungeon crawling sections yielded a system that allows multi-floor dungeons that can be logically represented on grid paper (important for the exploration feel) but which aren't physically constrained to a strict grid layout - for example, imagine a "flat" dungeon built such that parts of it slope or follow an undulating landscape. Tiles can include special transition behaviors, so things like hidden exits, crawl spaces, winding paths, etc. are all handled like any other tile. This means a dungeon can be built separately to its logical representation - that is, one could sculpt chunks of it as whatever meshes, animations, and decorations one pleases and then place the "tiles" that the player and other entities traverse within those meshes, tile "rooms", or whatever mix of approaches makes sense. There's also a system of tile transport such that parts of the dungeon can move around and rearrange themselves, whether on their own or in response to some trigger, and everything - entity tracking, pathfinding, etc. - seems to just work. In all cases, the dungeon's logical representation assembles itself behind the scenes so all a dungeon builder has to do is use graphical tools. That's very important, because things are best when played with - the quicker one can change and experiment, the more chances there are to get somewhere good. The tactical battlefield system is receiving the opposite approach; since each battlefield has to be generated and pathing has to be fast enough to keep up with player inputs, it makes sense to instead approach it as a strict grid where the assets themselves are placed and interact according to some representation behind the scenes. >Care to write something about it? Although there's plenty of aesthetic, setting, gameplay, and story stuff, don't want to hold forth on it until there's something solid to hang it off. The approach here is to take well-established fundamentals, extend each of them just a little bit, and then let the player come at them in a slightly different way than they might be used to.
Open file (6.56 MB 804x638 output.webm)
>>651 >anonfile expired Fuck it, I just ordered one of those ~100USD mini PCs with botnet 11 on it. Gonna be a pain in the dick with no KVM switch but I'll see about getting a windows toolchain up and running on that when it gets here. >>655 >>656 Encoding as webm (VP8 and Vorbis) seems to have fixed it for me - I can hear it in the browser now.
>>663 That's looking great Newt, looking forward to the jam!
Open file (914.48 KB 3548x4096 excited.jpg)
>>663 Looks very good, getting excited. Where will you be posting invitations to the jam? A lot of places are sensitive about spam but just relying on passing traffic here doesn't seem like enough.
>>665 Thanks. A lot of compromises were made but eh, I'm just happy it more or less plays. >>666 Checked. Yeah, I gotta make some posts inviting people. Everyone is welcome though, you don't need to wait for me to formally drop a post somewhere to get the word out if you want to. >A lot of places are sensitive about spam If someone wants to get butthurt about a cross-board event invitation, let them.
Update. Trying to polish this thing and get it somewhat presentable. Got a repo set up, need to push the latest version to it when I'm done with it. I need to ask everyone though: what OS are you guys on? I gotta say, I can't get shit working on this windows box. I have no idea where to start with windows development and don't know if I'll be able to support it. Since I use GNU Make and Makefiles, I figured installing MSYS2 then GCC and Make would be all I needed but it seems its not that easy. You guys have any ideas? I can do both linux and windows builds from linux easily enough. Gonna need some help with building shit on windows though if anyone can give me a hand.
>>669 I'm running macOS and can have a try at it if you like, although I suspect that the imageboard crowd will instinctively jump to the idea that first sniff of trouble will indicate that the OS I'm using (and me) are unsuitable to develop anything. Never bothered much with non-Windows development on a Windows machine because I also found it to suck beyond tolerance. Warming up for the jam at the moment. When's the official start in timezone terms?
>macOS Did not expect that but OK. If you have the time, do you think you can give this a download and see if you can't build it? ht tps://anonfiles.com/we6cu4vcz8/05112023_anim_zip It's just an old test program, but it requires Raylib and the makefile is essentially the same as what I'm using now. After you get Raylib installed per ht tps://github.com/raysan5/raylib/wiki/Working-on-macOS it should just be a matter of running Make (or whatever you use to build projects on MacOS). >suck beyond tolerance You ain't kidding. This is my second try at this too. The first day I got this machine it bricked itself by failing to install an automatic update, then failing to roll back said update and becoming unable to boot. I ended up having to do a factory reset. >When's the official start in timezone terms? There is none. It'll run for a month, so no need for any kind of mad dash at the start. I'm also on Asia/Tokyo time, so I'm something like 13-14 hours ahead of US anons anyway. Nothing stopping anyone from introducing themselves, talking about their OS, editor, dev environments, etc. dev experience, what they want to make, questions, ideas, shitposting, whatever right now either.
Open file (131.05 KB 2784x1720 screenshot.jpg)
>>671 Done. Not too hard: It built and ran fine after clang was told to use C++ 11, point to the Homebrew-installed Raylib location, and use some different library names (like "-framework OpenGL" instead of "-lGL"). The changed lines are now: >CFLAGS=-std=c++11 -Wall -Wextra -pedantic -Wconversion -I$(SRC_DIR) -I$(EXT_DIR) -I/usr/local/Cellar/raylib/4.5.0/include >LINKERFLAGS=-L/usr/local/Cellar/raylib/4.5.0/lib -lraylib -lm -lpthread -ldl -lX11 -framework IOKit -framework Cocoa -framework OpenGL No guarantee that this particular edit will work with something more complicated, but now you know in principle that this works on macOS and can be made to work by someone Googling error messages.
>>672 I should also mention that building like this will create dependencies upon the Homebrew-installed package according to "otool -L", so the result won't be suitable for distribution. For that, someone would need to follow the instructions given in https://github.com/raysan5/raylib/wiki/Working-on-macOS#without-xcode---building-statically onwards, but for a quick and dirty reference point those two line edits will suffice.
>>673 Nice. I don't know how Homebrew, Cocoa, or any of that works, but that sort of resembles how I build for windows on linux: have a 'lib' directory with 'libraylib.a', 'libraylibdll.a', and 'raylib.dll' and an 'include' directory with 'raylib.h', 'raymath.h', and 'rlgl.h'. The Makefile then looks like CC=x86_64-w64-mingw32-g++ EXE=game.exe BIN_DIR=bin SRC_DIR=src OBJ_DIR=obj EXT_DIR=$(SRC_DIR)/external EXT_OBJ_DIR=$(OBJ_DIR)/external CPP_FILES := $(wildcard $(SRC_DIR)/*.cpp) OBJECTS := $(patsubst $(SRC_DIR)/%.cpp,$(OBJ_DIR)/%.o,$(CPP_FILES)) EXT_CPP_FILES := $(wildcard $(EXT_DIR)/*.cpp) EXT_OBJECTS := $(patsubst $(EXT_DIR)/%.cpp,$(EXT_OBJ_DIR)/%.o,$(EXT_CPP_FILES)) CFLAGS=-std=c++11 -Wall -Wextra -pedantic -Wconversion -Iinclude -I$(SRC_DIR) -I$(EXT_DIR) #LINKERFLAGS=-lraylib -lGL -lm -lpthread -ldl -lrt -lX11 LINKERFLAGS=-Llib -lraylib -Wl,--allow-multiple-definition -pthread -lopengl32 -lgdi32 -lwinmm -mwindows -static -static-libgcc -static-libstdc++ all: $(BIN_DIR)/$(EXE) debug: add_flag all add_flag: $(eval CFLAGS+=-DDEBUG) $(BIN_DIR)/$(EXE): $(OBJECTS) $(EXT_OBJECTS) ${CC} -o $(BIN_DIR)/$(EXE) $(OBJECTS) $(EXT_OBJECTS) $(LINKERFLAGS) $(OBJ_DIR)/%.o: $(SRC_DIR)/%.cpp #$(CC) $(CFLAGS) -c -o $@ $< $(CC) $(CFLAGS) -c -o $@ -g $< $(EXT_OBJ_DIR)/%.o: $(EXT_DIR)/%.cpp #$(CC) $(CFLAGS) -c -o $@ $< $(CC) $(CFLAGS) -c -o $@ -g $< clean: rm -f $(BIN_DIR)/$(EXE) $(OBJ_DIR)/*.o clean_external: rm -f $(EXT_OBJ_DIR)/*.o The linker flags I took from here: ht tps://github.com/peteblank/yotsubee >dependencies Yeah, you're going to want to build the static raylib libraries if you're building for desktop.
>>669 >>671 Yo, I'll be using Linux so your build setup should work just fine. Nothing fancy re: dev environment, just XNedit & URXVT. Managed to go over the basics of C & C++ so hopefully I'll be able to get the gist of how the engine works. This should be fun, good luck anons!
ht tps://anonfiles.com/a1O5w0vfz4/06062023_binary_zip Linux and Windows binaries if anyone wants to play around. Source code next.
>>676 Source code if anyone wants to take a look: ht tps://bitbucket.org/anon-s-first-platformer/anon-platformer/src/main/ I do hope it's not set to private or anything, I haven't used bitbucket in a long time. I'll be back later today to do a proper event post.
>>677 Does bitbucket need an account to view or something? The page is blank for me, even with JS.
>>678 Loads for me. If you’re using a VPN, maybe try using a different endpoint? Some end up on blacklists.
>>679 Huh, looks like cloning works, It's just the frontend I guess.
>>678 >>680 I'll try to mirror it somewhere else. The bitbucket front end is complete ass, yeah. >>679 I can see it as well when logged out, should be ok.
Source code zipped ht tps://anonfiles.com/G4Mazav5ze/anon_platformer_zip
Open file (5.79 KB 1280x720 specialthanks.png)
>>681 >>682 Looking good here, only thing is that some folders aren't created so you need to make them manually: Assembler messages: Fatal error: can't create obj/Coin.o: No such file or directory make: *** [Makefile:40: obj/Coin.o] Error 1 ... Assembler messages: Fatal error: can't create obj/external/pugixml.o: No such file or directory make: *** [Makefile:43: obj/external/pugixml.o] Error 1
>>683 Did you download from the repo? Looking at it now, it does appear that 'obj' and 'obj/external' have somehow escaped being pushed. Maybe because they're empty until you build? Looking into it.
>>683 Fixed.
>>684 Git doesn’t include empty directories AFAIK, so makefiles etc. usually need to assume they won’t exist and create them with mkdir -p.
>>686 Figured. Thanks, I'll keep that in mind when I get around to polishing this turd of a makefile.
6/6 is upon us lads, so new thread up here >>688
>>686 >>687 Correct, git tracks files. Parsing a file name with slashes in it as a file within a directory, and creating those directories, is an implementation detail. It's common to place a .gitkeep file in an otherwise empty directory that you want to store in git.
I'm surprised there's 0 results ITT for >rpgmaker >gamemaker >renpy >godot >pygame >scratch >phaser >dreams >chip8 making it seem like you've only heard of unreal, unity and sdl and think raylib is the perfect middle ground. Sure, if your audience is embedded engineers, suggesting raylib is a decent choice. Dabble in a language that gives you a book's worth of error messages if you try to cout a list of strings. But for a more general audience something like scratch provides far more interactivity and guidance and keeps things simple. And since it's popular and targeted at literal infants, there's a wealth of tutorials, examples and Q&As. If you want to limit people to a platformer, just point them to the right scratch example of a platformer and a youtube tutorial for all I care. Which brings me to the other point, that you don't want a "theme or gimmick restriction" yet you literally limit the jam to a type of game. It's like you worked your way back from "I know how to make a platformer with raylib and I think that's a good starting point for newcomers, let's test the hypothesis with a game jam". If the restriction were "the theme is potato", I could've made a potato platformer, a potato dating sim (beautiful eyes , I bet you'd make great offspring!) in renpy or a puzzle game or potato golf/billiards (just an asset swap of one of those old flash games) or even a potato museum walking sim. And you could've still provided an example platformer using raylib. Except then you'd have to use a couple of poorly AI-drawn assets, like the character being a potato and the hazards being boiling oil, peelers and fungus. Guess I'll have to make a potato platformer in scratch now.
>>783 Raylib is not that bad xD. You're overexaggerating.
>>826 I think that anon was referring to C++ rather than Raylib in particular. >>783 Looking forward to playing your tater jumper Anon.
>>827 Not to mention 2d platformers are a shit tier genre thats been done to death for decades now. Even Mario largely moved on from it.
>>831 You can't seriously be trying to troll /agdg/ right now
>>832 Its a good genre to learn the ropes from, but not when every faggot under the sun is flooding every marketplace with the same copy paste 2D pixelshit with a dash of actual faggotry in there.
>>831 Mario games were way better when they were 2D.
>>831 >>852 It's a fucking jam, quit overanalyzing and being a faggot.
>>852 >>Its a good genre to learn the ropes from Now you're starting to understand. >>856 Guy's salty about something, I just wish he'd make a point sooner or later. I'll let him air his greivances or whatever for now and bust out the dustpan and broom and clean up after him if I have to later. Maybe he's got something to contribute, who knows. We are going to have a post-mortem discussion after the jam - what went well, what didn't, what people would like to see for next time, etc.. Maybe in the meantime our guy can get some chill and think about what to post for that.
Any plans for a second jam yet?
>>969 The first jam was poggers I can't wait until the next one!

Report/Delete/Moderation Forms

no cookies?