Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Max

Pages: [1] 2 3 ... 19
Your projects / Re: Ocean's Heart
« on: November 25, 2021, 03:44:18 AM »
Huh, that's odd. That actually sounds like the kind of thing that would generate a code error, can you find the error.txt?

Your projects / Re: Ocean's Heart
« on: November 23, 2021, 06:51:44 PM »
You ought to be able to! The game can be run by the Solarus engine on any of its ports. I think some raspberry pis have a limit on the size of .png files that can be loaded or something though? But I did some searching on the Solarus discord channel and from what I can tell, I was told about the size limit (2048px it seems), so I resized the tilesets down to be 2048px, so they ought to not cause any issues. I think others have run the game on RPi, but I'm not sure, so let me know if there are any issues.

Bugs & Feature requests / Re: Resizable Streams
« on: November 06, 2021, 01:20:57 AM »
Have you tried using
Code: [Select]
From the map script or something? It'd be pretty annoying to use that way, but I'm curious if it'd work.

The other workaround is on of course just placing a bunch of 16x16 streams, I haven't run into any issues with that. What's your use case?

General discussion / Re: General Lua and game coding advice?
« on: October 29, 2021, 04:42:28 PM »
You're probably in a good place if you've done a few years of CS classes, you'll be able to understand the logic of how things work. Lua is pretty straightforward. If you're familiar with Javascript or Python, it's pretty much the same with different syntax.

I'd recommend going through Christopho's tutorials and following along, they're kind of the required reading for Solarus:

There's two playlists. The 1.5 one is older, but I don't really think much of it has become outdated, so if there's something that isn't covered in the 1.6 playlists, the 1.5 ones should probably be fine.

General discussion / Re: Why I Can't Change Profile Picture On Steam?
« on: October 29, 2021, 04:32:34 PM »
Hi - welcome. I'm not sure if you're in the forum you think you are, this website is about games developed with the Solarus engine, only one of which is even on Steam haha. But I googled what you asked?:,upload%20a%20new%20profile%20picture.

If that doesn't work, you might try the Steam forums instead.

You can also define the function that's called when enemies are killed. Assuming the enemies are named "chest_enemy_1", "chest_enemy_2", etc, then

Code: [Select]
function chest_enemy_1:on_killed()
  if not map:has_entities("chest_enemy") then

You'll have to define that for all the chest enemies since you don't know which will be killed first. You can copy the code, or use a for loop, if you know those. Like

Code: [Select]
for x in map:get_entities("chest_enemy") do
  function x:on_killed()
    --check if other enemies exist

I don't remember offhand if the function should be on_killed or on_dead, so check the API docs

Your projects / Re: Minish Cap Maps in Solarus
« on: August 21, 2021, 04:27:46 PM »
The new stuff looks good! I'm glad you're already planning a 5+ year timeframe, since this is a very big project indeed : )

So I mean, I certainly won't make you start over and use different tilesets haha, but the "tilesets" in the Minish Cap resource pack were totally unfinished, and I'm guessing they were not meant to be used until someone deleted the "tiles" that were present and made new ones. But if you've made changes and consider them usable to your standards, then go ahead! However, I will say that if the tilesets were set up properly, I would not expect it to take very long to re-create Minish Cap's Hyrule Field. Maybe a couple weeks if you just spend a few evenings on the project?

With the tilesets as they are, I do not see any way to get the water to animate. For one thing, I can't tell if there even are animation frames in these tilesets. Second, to have animated tiles in Solarus tilesets, each frame of the animation needs to be adjacent to the other frames.

For example, in the attached image, the frames for the cliff are next to each other vertically, that's how the animation is laid out. The little wave is animated horizontally.

If you can find all the frames of animation for Minish Cap water, then you'll have to arrange them in rows or columns like this, then set up the animations. You'll have to find all the animation frames yourself (I don't think they're all in the "tilesets" in the resource pack), then arrange them properly, then set up the animations in the tileset editor.

Good luck reaching King Mob! I don't think anyone's ever been able to. As a side note, I don't think we should have his tiles in the tileset, as they're not really the same as using Nintendo tiles, it's weird for Solarus to be providing them on their website (I don't think it was done intentionally).

General discussion / Re: Export game to a specific platform?
« on: August 21, 2021, 04:11:56 PM »
I'm not super familiar with Mega Drive but I think so, yeah!

The Solarus launcher will display and allow you to launch and play various .solarus files, so maybe thinking of it like a rom file isn't too far off : )

Except secretly, it's just a compressed file with everything unencrypted, and it's easy to get inside and see what's going on haha

Your projects / Re: Minish Cap Maps in Solarus
« on: August 19, 2021, 04:17:19 AM »
Oops, sorry to double post, I'm just going through all the unanswered posts on the forum backwards and didn't realize the question about the " bugged out texture in the Castor Wild tileset" was the same topic hahaha

The tilesets in this pack look entirely unfinished and kind unusable in their current state. It looks like someone just overlaid a 16x16 grid, and made everything traversable. There's also tons of "tiles" over the transparent, unused parts of the png. I guess if you're using this though, you probably deleted the tilesets and redid them from the source .png file though?

But if you're asking about the pink, I have a guess for what that is. Because that's the exact shade of pink that everyone used to use back in the RPG Maker 2000 days hahahaha.
Back in those days, RPG Maker didn't read transparency in files. So you'd choose one color to be the "transparent" color, and RPG Maker would treat and tiles that contained that color as if that color was transparent. So you'd need to choose a color that wasn't contained anywhere in the actual tiles, because if you used like white for example, any tiles that were white (snow, highlights, etc) would have "holes" where the white was. Or if you used a shade of green, you'd risk parts of your trees going transparent or something. It might have also been limited to 256 colors? Can't remember. But anyway, basically everyone settled on that shade of pink to be used as the transparent color, since it's basically never used in actual tiles. I'm guessing that was carried on out of habit and used as a placeholder for transparency.

But then looking closer, there's all kinds of weird stuff going on. Some of the tiles have like, a pink overlay, or there's some places where water tiles look to have turned grey somehow. So I think in addition to using the pink for a placeholder, there was also some recoloring mistakes. The tilesets also look like they have a bunch of garbage tiles that were leftover from ripping the graphics from the GBA cart. Like all those little boxes in the Hyrule Town tileset. So these were never cleaned up from the initial ripped graphics, and there could have been some problems during that process that corrupted some of the tiles as well.

TL;DR, I'm guessing that the pink in the tileset was used as a placeholder for transparency, or was left from old Minish Cap rips and wasn't removed. And then it looks like when the tiles were ripped it didn't work perfectly, or there were some mistakes when recoloring. But I don't know how you're using these tilesets anyway because as they are in the repo I just downloaded, they totally need to be redone.

Side note, if you are redoing these or want to and could use help, hit me up. Preferably on the discord server so I'll actually see it haha

General discussion / Re: Export game to a specific platform?
« on: August 19, 2021, 03:56:05 AM »
There's a lot of different platforms, so there are different methods to do what you probably want.
The simplest method for PC (which I think you're targeting since you said exe) is to use the solarus-run.exe. That exe looks for a folder called data in the same folder the exe is in, or a zipped data folder called whatever with a .solarus extension. You can rename the solarus-run.exe file to something like "MyGame.exe" and it'll run the data for your game.

If you want just one file you can pass along for windows, you'd probably need to create an installer. Clicking that would basically just put the solarus-run.exe and data folder somewhere and create a shortcut, so the same thing just a little obfuscated lol. I don't know how to do that 'cause it's a little complicated. And I've found that using the other setup seems to work just fine for distributing your game. If you want to look at a game I have on that uses this, you could look at Yarntown:

Your projects / Re: Minish Cap Maps in Solarus
« on: August 19, 2021, 03:51:12 AM »
I think Children of Solarus handles that in the main.lua:

Code: [Select]
-- Event called when the player pressed a keyboard key.
function sol.main:on_key_pressed(key, modifiers)

  local handled = false
  if key == "f5" then
    -- F5: change the video mode.
    handled = true
  elseif key == "f11" or
    (key == "return" and (modifiers.alt or modifiers.control)) then
    -- F11 or Ctrl + return or Alt + Return: switch fullscreen.
    handled = true
  elseif key == "f4" and modifiers.alt then
    -- Alt + F4: stop the program.
    handled = true
  elseif key == "escape" and == nil then
    -- Escape in title screens: stop the program.
    handled = true

  return handled

The specific bit is (edited a little bit to simplify):
Code: [Select]
if key == "f11" then

Basically, this code defines a function called sol.main.on_key_pressed(x). This is a special function- the engine will call this whenever a keyboard key is pressed, and the engine will pass an argument of which key that was (the function I just wrote has the "x" in the parenthesis, that's a variable which will store the key the engine passes along.) I don't know your familiarity with coding, so this might be overexplaining, but.

So then the code has a conditional: if (something) then (do something else) end
So if x == "f11" (as in, if the argument the engine passed, the key pressed, is the f11 key)
then toggle fullscreen.

By the way, just 'cause I noticed nobody had answered you for like 4 days, if you aren't aware of the Solarus discord server, that's a lot more active than the forums. You'll likely get quicker responses there : )

Bugs & Feature requests / Re: Problem running yarntown
« on: August 04, 2021, 07:09:37 PM »
When something like this happens, it's generally an incompatibility with your system, so Dianthus you probably wouldn't be able to replicate it. There's a number of things I know of that might cause a symptom like this.

- Your system doesn't support hardware acceleration.
    - Fix: you'll need to use to Solarus launcher, which has an option to "Force Software Rendering"
- Could be using the 64 bit version when you need to use the 32 bit version
- Need to update graphics drivers perhaps
- Your system doesn't support OpenGL

There could be other causes, but those are the ones I'm aware of.

Development / Re: Different HUD
« on: August 04, 2021, 06:50:33 PM »
Yeah, a HUD with numbers would actually probably be much easier than hearts, haha, and you would write a script for this, just as you already have a script that displays health as hearts. The Solarus engine doesn't display any HUD, all of that is done via game scripts. If you're not really familiar with how scripting in Solarus works and stuff, I'd recommend waiting to change the HUD until once you're more experienced, as that's more abstract than other concepts like map entities.

Here's an example of a bar-style health HUD element, if that's useful:

Bugs & Feature requests / Re: USB game controller not working correctly.
« on: August 04, 2021, 06:45:18 PM »
So you could add code like this somewhere in your game where it will run, like the game manager if you're using one, or something like that
Code: [Select]
function game:on_joypad_button_pressed(button)
  print("Pressed button:", button)

function game:on_joypad_button_released(button)
  print("Released button:", button)

function game:on_joypad_axis_moved(axis, state)
  print("Axis moved:", axis, state)


See and below events for the details of all joypad inputs.
This will let you see what the engine is seeing- you can compare this to what you're actually pushing, to see if the problem is that the engine is getting the wrong inputs, or if the game is processing them incorrectly.

Also, this is maybe obvious, but your controller could also maybe be broken. You did say it's an old game controller, maybe the most obvious thing is to try a different one and see if the problem is just with the controller.

Also, feel free to post on the Solarus discord, the forums aren't nearly as active : )

Your projects / Re: Ocean's Heart
« on: February 17, 2021, 12:45:12 AM »
It's not a stupid question! It just wouldn't work for controllers, which only have 4 face buttons, and I like to keep functional parity between input methods. Feel free to mod your copy to use that though, haha : )

Pages: [1] 2 3 ... 19