chrismaltby / gb-studio Goto Github PK
View Code? Open in Web Editor NEWA quick and easy to use drag and drop retro game creator for your favourite handheld video game system
Home Page: https://www.gbstudio.dev
License: MIT License
A quick and easy to use drag and drop retro game creator for your favourite handheld video game system
Home Page: https://www.gbstudio.dev
License: MIT License
First off, this is incredible! I love how you abstracted the details of making a game so that a non-developer can use it. I've shared it with the people in my company (sales and all) in an attempt to help get them involved in code.
I don't distract from the "Scratch" component, but what would it take to add a "Custom Code" segment where an API call could be made? I'm asking because, if it's a good idea and/or possible, I'd like to help.
I do Vue, Angular, Node and Go, and so I could be of assistance.
Would it be technical possible to support animated tiles on the background layers? E.g for creating animated water?
first of all, I've been playing around with the program. It's easy to use and it has got a lot of options. So overall, Great job!
But I'm missing some minor things, I'm probably the only one who's missing them :/.
First thing:
an in-game menu, the only problem is it would use a considerable amount of storage. This could be combined well with the Save-Load data idea #5. Editing the menu also probably needs it's own working field, not in Game World.
Second thing:
The ability to make an actor follow another actor. Make them walk beside each other or behind them through a pre-programmed path(Start point, way point,.. , End point). For example: Make the Player follow an actor who's telling you stuff about the game and it's world. OR an actor who's following the Player because you have to take it somewhere.
Third thing:
This one is a lot easier than the other 2.. When you boot up GB Studio and you want to Open your last project. I'll have to search for some time before I find it. So perhaps when you boot GB Studio it will open you last project. OR when you go to the Open project you will see your recent projects.
fourth thing:
That you could show the actors name above the text field when talking to an actor.
Would it be possible to add support for touchpad zooming on macOS?
At current with GB Studio, you can make puzzle games (e.g. maze games, block-pushing puzzle games like Sokoban (or Boxxle/Boxxle 2, if you want an actual Game Boy example)), adventure games like Fairune, "walking simulators"…
But you can't make an adventure game where the player can interactively attack things (like stabbing/slashing with a sword, or shooting a gun/magic wand), like Rolan's Curse (and Rolan's Curse II, its rarer sequel), The Legend of Zelda: Link's Awakening, or Final Fantasy Adventure, because it's impossible to script a weapon for the player.
My first thought for how this could be done was hiding an Actor somewhere to be used as the weapon (a sword, in this example), and having its script get triggered when the player presses the "B" button.
The script would basically work as follows:
…But there's currently no ability to place or move an Actor/set an Actor's position to coordinates relative to another Actor's X/Y coordinates, nor the ability to check the direction that an Actor is facing.
Also, this script could probably be simplified — but like I said: this was my first thought.
Of course, GB Studio is only at version 1.0.0, and I'm not expecting it to have every feature that everyone wants right off the bat, but I thought I'd throw in my 2¢. :)
*Alternatively, check which Actor the weapon Actor collided with and then check an appropriate "HP" variable for that Actor. If the variable's value is greater than 1, decrement the value, and have the Actor become Hidden when the value reaches 0.
That would be awesome. I seen someone paste a photo of their Mac version and it looked like they already had a dark theme on it, please don't forget us Windows users :D
Hi, I integrated piskel into a similar engine to this one - gdevelop a while ago and recognize that I can do the same for gb-studio without that much effort.
If there any interest in adding piskel as the default pixel editor in gb-studio?
If so I can create a pull request :)
piskel:
https://gdevelop-app.com/make-8bit-pixelart-games/
Would you like to have piskel bundled with gb-studio?
When using the sprite page, both the Edit
button and the +
button don't trigger anything in the UI. I haven't checked other platforms to see if these interfaces aren't implemented yet, or if this issue is platform specific.
It would be great if we were able to customize the types of animation per sprite. Apart from the current (no animation, facing and 2 frame facing walk cycle) I would love to have:
Both of those can be implemented by adding extra frames to the y axis on the sprite sheet (so idle 2 frame animation would be 16x32)
Making idle animations will really help create more enticing worlds.
Hey, I really love your program!
I was gonna ask if it's possible to have a sprite with the same colors as the background images.
I want to display this monster in the middle of the screen as 4 16x16 sprites, rather than part of the background, so that I can easily replace the sprites with other monster sprites. I don't need a transparency for these kind of sprites... so maybe it's possible to make transparency color an option but not mandatory?
Cheers!
I find myself repeating a lot of code over and over, and was thinking it would be nice to be able to make our own "functions" in the UI.
Let's say I have four sprites that I'm using for one, and I want them to all appear or disappear at the same time. Right now I have to use 4x hide actors.
What would be nice is if I could define my own block, and just run that to hide all four actors, and reuse it later.
Hey, this project looks super cool! Thanks for working on it, I'm excited to try it out.
I was wondering if you think it would be possible to use Emscripten or similar to pack the C dependencies into WebAssembly that gb-studio can be run in a web browser.
I don't know too much about Electron or Emscripten or WASM but I figured it could be really neat if folks could use this tool without needing to download an executable.
have you alread implemented any way to do that?
If player and another sprite are overlapping while moving the player the overlapped sprite is showing through the player (possibly only on each other frame, not 100% sure). See attached gif
initialization error keeps happening when trying to run or export the game.
the plantation2.zip
As gb works on 8x8 graphics chunks it would be beneficial to allow different sprite sizes (8x8, 8x16, 16x8). It would definitely help with memory concerns for sprite heavy games and allow for more artistic expression.
The Release version download in China (due to GFW.)is very low, 20 KB/s maybe, which will result almost need 1h to download.
But i can be failed when i retry download for 3~4 times.
If there will be on https://sourceforge.net/ or via DropBox or some direct download links.
I'm wondering if I can run a script parallel to the player. For example, I want to make a time system, but currently, while that's running, the player cannot move. Is there a way to run a script while the player has control?
Is there any way of saving your progress in game?
I see no option in the studio itself, is there a method we can add manually to the main script?
@chrismaltby
Hey! I really love what you are doing with GB Studio but I think that it lacks some features.
I know that some of these are probably in another issue but here they are anyway.
• Built-in tileset/sprite editor
• Built-in map editor
• Text-based scripting
• Collision detection (For enemies)
• Health and damage
• Popup menus (When a certain button is clicked)
• The ability to control more aspects of the game
• To have GB Studio be an all-in-one tool for GB game development
• Custom overlays instead of just black and white
• A "Follow Actor" event
Other than that it's an awesome piece of software. I'm making a game with it at the moment.
Hello! Just want to say thank you so much for putting this together! One little thing I noticed is that in the sample project, the assets are RGB-mode png files, and don't have four-color palette restrictions. I opened the logo.png
file in GraphicsGale, but wasn't sure which colors were valid.
This is nitpicky, though, I can't wait to sink my teeth into this tool & see it improve over time! Also shoutouts to using Amiga MOD files for music, I love using OpenMPT <3
The sentence is awkward because I used Google Translator. please understand.
I would like to create a gba or gbc game with colorful colors.
This project unfortunately only supports gb, and appears to be limited to four colors.
Is it possible to create a game with lots of colors through a program that ignores documents on the official homepage and arbitrarily puts a lot of colors into the game and then converts the output gb file to gba/gbc? If not, do you plan to support rom file output for gba/gbc?
I've been waiting for these tools to come out into the world.
The dream finally came true. Thank you.
(1167cfa)
Using the "Multiple Choice" event, I get the view error shown below
It would be great to be uniform with most software by having a HELP>ABOUT window dropdown so users would know what version of GB Studio their working with.
Is it possible to an Actor animate while standing still?
Like an npc who walks in the same place
This + button is taking me to the Docs page for Backgrounds:
https://www.gbstudio.dev/docs/backgrounds/
Perhaps:
assets/backgrounds
folder.Right now it is a bit unintuitive.
It would be nice to have a flatpak image, so that it is easy to install on any Linux distro.
I created a project containing the default sample project, and didn't change a thing.
When attempted to run or export (web or ROM) I got this error:
... \AppData\Local\Temp/_gbs/gbdk/lib/small/asxxxx/gb/cr.: cannot open. 4294967295
I searched for this file and it is not there (also ran the .exe as admin, got the same).
OS: Windows 10 pro x64
Processor: Intel Core i5-7500T
(btw, this project is amazing, congrats!)
Panning around the Game World to see all the different scenes with the SPACEBAR would help to navigate around the Game World.
GB Studio only accepts JSON files, how am I supposed to make rom hacks? If anyone has a solution please let me know.
While the default palette is good, it would be great to have an option to use different palettes following the same 2bit standard of 4 shades.
Especially I would welcome a darker green reminiscent of the original gameboy, the taupe-ish look of Gameboy pocket and simple black-white ramp.
This will allow the author's to control the mood of their game more, while still staying within the Gameboy 2bit limitation.
I am happy to provide extra palettes.
would like to implement an hebrew translation.
I suggest you to add some images or demo video of the platform on your readme , to make it more attractive and users can know directly before visiting the website or downloading it .
It would be amazing to have a method of adding selection options to the text windows to give the player the ability to choose an option (that could be used in scripting to change a variable).
Also the ability for a "next" button to link multiple text windows together in sequence or in a logic tree would be very helpful.
See example from Pokemon UI in the bottom right corner
Hey guys! I really love this!
It can be great to have a showcase or demos online, so we can check the games of the people.
Do you have something to show? comment here!
Hello I think this project is awesome.
Here are some ideas.
Mod file format support is great but there are some tools better suited for the job like deflemask http://deflemask.com/ that export gbs format.
https://mmitch.github.io/gbsplay/
http://www.angelfire.com/nc/ugetab/
http://web.archive.org/web/20171128170657/ftp://ftp.modland.com/pub/documents/format_documentation/Gameboy%20Sound%20System%20(.gbs).txt
VGM is also a good choice https://en.wikipedia.org/wiki/VGM_(file_format)
Here is a player for the gameboy
http://jiggawatt.org/badc0de/dmvgm-4.zip
Additional References
https://vgmrips.net/forum/viewtopic.php?f=3&t=107
https://github.com/Sanqui/gbvgm
https://github.com/io7m/jvgm
https://github.com/kuma4649/mml2vgm
https://github.com/dzidzitop/vgmtag
Finally supporting midi files may be possible using
https://sourceforge.net/projects/midi2mod/
or mid2vgm https://vgmrips.net/forum/viewtopic.php?t=1929
Thanks 👍
It would make it so much easier to navigate, then constantly using the left/right up/down scroll bars.
I have an event that runs once my player enters a scene, however if the player leaves and returns the event assigned to that scene runs each time.
I tried using an if statement by assigning a value to a variable and removing it after the event runs but this makes no difference.
Is there a way to have a scene's event run just once?
Is there any way you can add or implement LSDJ .sav files for soundtracks?
Is it possible to implement tile based movement (like e.g Pokemon Red & Blue)?
I see there's Actor Set Position, but there is no Actor Set Relative Position!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.