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 ... 15
16
Development / Re: Quest document - updated pdf
« on: April 23, 2019, 07:14:51 pm »
Hey- I'm not sure what the "quest document" is, do you mean the API reference documentation?

17
Development / Re: New Solarus Guide from scratch i'm creating
« on: April 23, 2019, 07:12:58 pm »
Lol, 20degree does say they understand many people will just say "make a game", like you said Diarandor :p

Hey dude, if you learn best by making a guide, good for you and go for it. Many of the questions you will ask are covered by tutorials, which will help your book I'm sure. There is also another Solarus book someone wrote which might likely help you- you can find it on the forums.

I looked at your guide- it is very hard to read because of the busy colorful background, but if you're mainly doing it just to teach yourself I guess that's fine. Writing a book like this forces you to think more step-by-step than making a game sometimes can. Good luck, have fun.

18
Your projects / Re: Ocean's Heart Beta Testing
« on: April 15, 2019, 04:36:33 pm »
Awesome guys! I appreciate it!

The biggest things I don't have a great grasp on are balance issues, probably. Since I don't know how well hidden most power-ups and stuff are (since I know where they are, haha), I'm not sure how many of them most people will find, or if they're even fun to find. I've tried to roughly balance the enemies for doing like 60-70% of the side content, but I'm not sure if the enemies are too easy, too damaging, unfair, etc.

I'm also just very concerned that stuff will be boring or unprofessional looking, haha. Also, if it's possible to record your screen let's-play style while you're playing, that'd be super helpful, but I know that's a pain to set up if you don't usually do that.

I'll send you both messages with links to the current build.

19
Your projects / Re: Ocean's Heart Beta Testing
« on: April 13, 2019, 02:22:40 am »
Thanks! I'll send you a link.

20
Your projects / Ocean's Heart Beta Testing
« on: April 12, 2019, 09:40:39 pm »
Hey!

I know many of you are aware of my game, Ocean's Heart. As of right now, it's officially in beta, and I'm looking for some testers. I'd love to have some Solarus developers looking at it especially, since you know how the engine works and would have a better idea what you're looking at if you come across something going wrong.

So if you're interested, please send me a DM or message or email or something, and I'll get you a copy of the game!

21
Quote
2. Make a your own quest that's simple and doesn't require much scripting
I can't agree with this enough! Some solarus devs were talking about where to start a while ago, and I think we all agreed that making a couple maps without any scripting to familiarize yourself with the editor's interface and map entities is the best place to start. I'd recommend making something like a town first. Then maybe a dungeon that doesn't have a dungeon item. I think it's a really good idea to do these before you start trying to make your game, or implement any quests.

The one place I disagree with llamazing is that I think the biggest limitation is each developer's commitment to learning. Solarus is a great engine, both powerful and easy to use, but it does take time to learn lua and the solarus API. I think a big obstacle is people jumping in, trying to make their dream game, and getting bored and discouraged. You might not be creating complex branching quests with unique mechanics in just a couple months. But if you persist, you totally can do that with solarus!

Also, let someone know if you can't find the link to the discord server, I think between all the solarus devs, one of us is on there at just about any hour of the day, haha : )

22
You're not wasting anybody's time : )

So you just want to show two consecutive dialogs? Why not just show the second one in the first one's callback?

23
Development / Object you can throw over and over
« on: March 15, 2019, 04:41:51 pm »
Hey, so I coded this custom entity that's a lot like the iron ball from A Link to the Past's Eagle Tower- it's an object the hero can pick up and throw, and then pick up again and keep on throwing. You can even carry it to other maps and keep smashing it into enemies faces. I can it "toss_ball", haha.

You can set the properties "weight" and "damage" on the custom entity, which by default are 1 and 6. When this entity hits an enemy, it'll try to call enemy:hit_by_toss_ball() , so if you want certain enemies to exhibit different behavior on being hit by this than being damaged, define that function for those enemies (if, for example, you wanted an enemy to have its shield destroyed, or become vulnerable when hit with this or something.). Note: hit_by_toss_ball() will be called whether the hero throws the ball into the enemy, but also if the enemies runs into the entity while it's on the ground.

Code: [Select]
local entity = ...
local game = entity:get_game()
local map = entity:get_map()
local DEFAULT_DAMAGE = 6


function entity:on_created()
  entity:set_traversable_by(false)
  entity:set_drawn_in_y_order(true)
  entity:set_follow_streams(true)
  entity:set_traversable_by("enemy", true)
  entity:set_weight(1)
  if entity:get_property("weight") then
    entity:set_weight(entity:get_property("weight"))
  end
end

local enemies_touched = {}
entity:add_collision_test("sprite", function(entity, other)
  if other:get_type() == "enemy" then
    local enemy = other
    if not enemies_touched[enemy] and enemy:hit_by_toss_ball() then
      enemy:hit_by_toss_ball()
    end
    enemies_touched[enemy] = enemy
    sol.timer.start(map, 1000, function() enemies_touched[enemy] = false end)
  end
end)

function entity:on_lifting(carrier, carried_object)
  carried_object:set_damage_on_enemies(game:get_value(DEFAULT_DAMAGE)
  if entity:get_property("damage") then
    entity:set_weight(entity:get_property("damage"))
  end
  carried_object:set_destruction_sound("running_obstacle")

  --landing, and therefore needing to create a new toss_ball
  function carried_object:on_breaking()
    local x, y, layer = carried_object:get_position()
    local width, height = carried_object:get_size()
    local sprite = carried_object:get_sprite()
    local direction = sprite:get_direction()

    if carried_object:get_ground_below() == "wall" then y = y + 34 end
    carried_object:get_map():create_custom_entity({
      width = width, height = height, x = x, y = y, layer = layer,
      direction = direction, model = "toss_ball", sprite = sprite:get_animation_set()
    })


  end

end


If you see any errors or mistakes I've made, please let me know so I can fix them! Have fun using this, modifying it, whatever you want.

24
Your scripts / Re: Simple Leveling up system
« on: March 09, 2019, 06:08:27 am »
Lua is all cool with decimals, but I believe game:set_value() will round to the nearest integer, as will most engine functions like set_life.

25
Development / Re: stop_dialog
« on: March 08, 2019, 05:34:51 pm »
I'm vaguely familiar with the dialog box script, I thought that maybe this was a variable you set in the script? Like how you set "top/bottom/auto" for positioning.

26
Bugs & Feature requests / Re: Cut Vines
« on: March 04, 2019, 07:10:59 pm »
Yeah, of course! : )

Lots of that kind of different perspectives and ideas just comes from familiarity with the toolset of the API, it'll come in time!

27
Bugs & Feature requests / Re: Cut Vines
« on: March 04, 2019, 06:12:18 am »
Hey, gman. From a cursory glance, it looks like vine:overlaps is a function you're trying to call, but it isn't defined anywhere?

Either way, this is kind of an odd way of going about what you're aiming to do, I think, or maybe I just don't understand it.

How I might handle vines I want cut with the sword is to make them an enemy that isn't traversable and doesn't damage the hero, with a life of 1. Or you could make a destructible that can be cut, but can't be lifted. Is there any reason you want to make these a custom entity?

If so, I think there's a better way of writing the collision test. The sprite collision test has a callback function where you can check what the colliding sprite is, see if it's the sword.

Finally, use
Code: [Select]
[code=lua] your code [/code]
These tags add lines numbers and syntax highlighting for Lua.

29
Your projects / Re: The legend of Zelda alttp Taizo Demo
« on: March 02, 2019, 12:39:05 am »
Ah, I misunderstood "hard version of ALTTP". Good choice, I think, and a great way to learn. If you didn't already hear, there's a discord many people are active on if you can't find any answers in the forums : )

30
Your projects / Re: The legend of Zelda alttp Taizo Demo
« on: March 01, 2019, 04:33:48 pm »
Nice, looks like a great start! You've already got a lot of things working, looks like you're coming along!

A little feedback I have is that a remake of the entirety of ALTTP is quite a lot for a first project. Smaller projects, in my experience, are more likely to get finished.

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