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 4 ... 17
16
Your projects / Re: Ocean's Heart
« on: June 03, 2020, 02:59:28 am »
256 x 144 ratio?
Or 384 x 216 (fits 8x8 but not 16x16)
Or 512 x 288

If you maintain a player character of the same size, these game sizes will change how the game feels a lot. More claustrophobic and less room to fight enemies and see them coming, or else zoomed out more so you would need to move faster probably. But I don't think it'd be a craaazy drastic change. You could also, instead of black bars, probably do something where the game is 416x240, but there's a menu in the sol.main context that's outside the game, and takes up that space.


@scruffy, thanks for the feedback! I'll go through it and fix any bugs.

The fact you can use the key on the secret place if you know where it is, is intentional. I thought it'd be fun to put in a massive skip, and designed so the items of the dungeon you skip aren't mandatory. I don't think bomb damage ever changes, so it didn't make sense to list it like a stat. The rest sound like bugs though!

17
Your projects / Re: Ocean's Heart
« on: May 26, 2020, 02:41:04 pm »
Seems like you're kind of answering your own question as to why I'm not using a 426px size. I rounded down to the closest multiple of 16 for things like that. So I can evenly fit 16x16 tiles into maps

18
Development / Re: Is it possible to edit explosion damage?
« on: May 17, 2020, 05:53:52 am »
You could adjust how much damage enemies receive from specific sources of damage. With the enemy metatable, enemy:on_hurt gives you access to the attack received. So you can do like, if attack == "explosion" then enemy:remove_life(explosion damage)

19
Your projects / Re: Ocean's Heart
« on: May 11, 2020, 11:16:37 pm »
Love that show dearly. Wasn't thinking of it when I was designing the coins specifically, I based it on that certain kind of Chinese currency, and also the ATLA team based the Earth Nation on China as well.

Good job with the hue shifting on the coins. Yellow generally shifts toward red rather than green as it gets darker, but yellow is probably the touchiest color to work with.

20
Your projects / Re: Children of Solarus [official thread]
« on: May 11, 2020, 11:13:56 pm »
Yeah, like the lower one of those. Loosely a kinda curved \ shape

So darker colors in general should be more saturated, besides being cooler. Still lots of exceptions, etc.

21
Your projects / Re: Children of Solarus [official thread]
« on: May 06, 2020, 08:15:40 pm »
Part of my ability there might be I don't know what a texture palette is, which maybe helps? Lol

For selecting colors I just sweep through the color selector in roughly a kinda y=-2^x shape, with a bit of hue shifting towards cooler or warmer colors for shadows/highlights. And avoiding yellow things, yellow is hard. Whereas blue is pretty forgiving.

Your tree looks really good by the way! Might shift the darkest green a bit more toward blue, and the midtone brown a bit more towards red to illustrate what I do, but there's no right answers.

22
Instead of "enemy:remove_life()" on the minions, you could do "enemy:remove()", which just takes them off the map, instead of damaging them. If you still want the dying animation you could manually create that.

23
Development / Re: Sprites not visible when entities created
« on: March 28, 2020, 05:59:33 am »
Hey, I'm not sure how many other people use their phones to look at this site, but I can't open those files. Have you thought about hosting on Gitlab or GitHub, or putting the relevant code in your post in code format?

Anyway, without being able to see the code, are you using `sol.sprite.create()` or are you using `enemy:create_sprite()`? Usually what you want in this circumstance is probably `enemy:create_sprite`

24
Your projects / Re: Ocean's Heart
« on: March 28, 2020, 05:55:53 am »
Thanks! You're off to a great start. I don't really know that I have my own style, I learned how to do pixel art by making small changes to art from Zelda games. For Ocean's Heart I wanted sort of a mix between Oracle of Seasons and Minish Cap because I think those games have good art that lends itself well to good world design, and just, that's what happened. I wanted to do a bold, cartoony style because I think it's easier to read than how a lot of modern games have outline-less pixel art with more abstract shapes.

So I guess basically, I decided what was most important for the game I'm making, then made art decisions to support that.


One tip for your art here, some of your midtones actually look brighter than the highlights, because they're more saturated. There's a word for this, I can't remember, value? Luminosity? Anyway, the bed for instance, the wrinkles are lighter in value, but less saturated, and it looks a bit odd.

25
Development / Re: Strange problem with a "set_enabled()"
« on: January 16, 2020, 08:41:59 pm »
Looks like your fsa_effect script or maybe effect_manager are causing the issue. Could you post those, or link them, looks pretty long.

26
Your projects / Re: Long Steel
« on: December 25, 2019, 07:34:13 am »
Oh, this looks super cool! Don't know how I missed it until now! Looks like a ton of stuff is going on in here, packed full! Nice job!

27
Largely depends on your entities' code, too. I had an enemy I'd written kinda poorly that caused lag on my decent laptop with just 5-6 of them. Are they calling functions every few milliseconds? Or just wandering randomly? That'll make a difference.

Out of curiosity, why do you want to merge everything into one map? Seems more difficult to work with, especially if you're putting much code into the map script.

28
The transition between music between maps isn't really seamless either though, haha

Using sensors is exactly how I'd do it too. Using the sensor:on_activated() event to call sol.audio.play_music

You might want two sensors per transition, one to okay the field music, one on the inside of that to play the town music.

29
General discussion / Re: Confused about Copywrite
« on: November 16, 2019, 03:30:25 am »
No, you're right. Any use of Nintendo's copyrighted assets is copyright infringement. The Solarus engine isn't Nintendo though, some people are just using Nintendo assets within their games.

The nuance is that fan-works of fiction are an art form that goes long back into history. Fanfiction is copyright infringement also, but various IP owners take different stances on what they allow.

Nintendo tends to ignore smaller infringements (which is logical, it'd take a lot to prosecute). But if one of the games that uses Nintendo assets got a letter from Nintendo, they'd have to take it down.

The good news is, there's a lot of work in this engine that doesn't use Nintendo assets, lots of which is using open-source assets, which are free for anyone to then reuse if they're so inspired.

30
Your scripts / Do tasks in a certain order to open a door or whatever
« on: November 03, 2019, 06:44:11 pm »
Hey, a while ago someone asked me about something like this on the discord, and just now I figured out a decent script for this so I thought I'd share it in case anyone else needs to do this.

This is some simple code for one of those situations where you want the player to press a number of switches (or talk to a number of NPCs, kill a number of enemies, etc.) in a certain order. This code allows you to just write the names of those entities (switches, npcs, enemies, whatever) into an array in that order:

Code: (lua) [Select]
local switch_index = 1
local switches = {"ordered_entity_2", "ordered_entity_4", "ordered_entity_3", "ordered_entity_1"} --I had several NPCs that you needed to interact with in a certain order

for entity in map:get_entities("ordered_entity_") do
  function entity:on_interaction() --or, entity:on_dead() for enemies, entity:on_activated() for switches, etc.
    map:process_switch(self:get_name())
  end
end

function map:process_switch(name)
  if switches[switch_index] == name then
    switch_index = switch_index + 1
    --show some feedback here so they player knows they did something
    sol.audio.play_sound"switch"
    if switch_index == (#switches + 1) then
      --do whatever happens when you do all the things in the right order:
      sol.audio.play_sound"switch"
      map:open_doors("skull_door")
    end
  else
    --if the player hits one out of order:
    sol.audio.play_sound"wrong"
    switch_index = 1
  end
end

Pages: 1 [2] 3 4 ... 17