Menu

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.

Show posts Menu

Topics - the bread

#1
Development / Wall entities behaving strangely
January 04, 2016, 12:14:40 AM
Hello there  ;D
For some kind of bow-shooting minigame I wanted to keep the hero from moving. I wanted to do this by blocking all directions with wall entities. I disable them, when the map starts and enable them, when the hero activates a walkable switch.
However, the wall entities are kind of acting in a weird way...
(I got no clue how to insert screenshots in the text so I am going to attach them to the post)
At first I tried to use only one big wall entity and position the switch on top of this entity (see first screenshot). This didn't work at all, I could leave the switch and go wherever I want. But the wall entity was activated because it's impossible to go back to the switch again once you leave it.
Afterwards I tried to block the way using four different wall entities (as seen in screenshot 2). This is very strange, sometimes I can leave the switch and go anywhere, sometimes not. Returning to the switch is always impossible. I came to think that it depends on whether the hero overlaps the switch completely.
Finally I extended the four entities (screenshot 3), now it is acting similar to screenshot 2 but even stranger... Sometimes I end up blocked beneath the switch and sometimes I can slip through a wall entity as I did with the four smaller ones but this breaks the disabling of the wall entities; usually the wall entities should be disabled again after some time but now the wall entity I glitched through stays activated while the other ones are disabled correctly.
Does anyone know why the walls behave like this? Is this intended?
#2
I've recently changed the source image of the items sprite but it kept the old source image for all animations but the default one and the rupee item (for which I use the new sprite). I don't think it's intended but even if it is, it's not the behaviour I expected and wanted. Not so important anyway, it's just a bit annoying.
#3
Bugs & Feature requests / Some improvement suggestions
August 22, 2015, 10:04:49 PM
1.) Camera abilities
  -A function to center the camera on something else than the hero (an NPC, an enemy, a custom entity...)
  -A function to move the camera to a different map
  -A function to set the camera immediately to a point instead of moving it
2.) Code editor
  -A better syntax-highlighting (the one of the website is much better than the one of the code editor :o)
  -Save the indention of the previous line
3.) Allow to add own kinds of grounds

These are my current ideas what could be improved. If something else crosses my mind I will add it to this list
#4
When a kind of rupee is picked for the first time, I want my rupee system to show a message that informs the player about how much it is worth. I have tried to implement it like this:
Code ( lua) Select

local item = ...

function item:on_created()
  self:set_shadow("small")
  self:set_brandish_when_picked(false)
  self:set_sound_when_picked("picked_rupee")
end

function item:on_obtaining(variant)
  local amounts = {1,5,10,20,50,100}
  local colors = {"green","blue","yellow","red","violet","orange"}
  local game = self:get_game()
  game:add_money(amounts[variant])
  local rupee_obtained = colors[variant] .. "_rupee_obtained"
  if not game:get_value(rupee_obtained) then
    game:set_value(rupee_obtained,true)
    if not (colors[variant] == "green") then
      local dialog_id = "_treasure.rupee." .. variant
      game:start_dialog(dialog_id)
    end
  end
end


This works fine for rupees that are lying around on the ground. However, when the first rupee of a color comes from a chest the game crashes because the same dialog is called twice (once by the engine, once by the item script in on_obtaining). Is there exist a way to get the origin of an item? I didn't find anything in the documentation but maybe there's a workaround? Any completely different solution is of course welcome as well ;)
#5
Today I tried implementing a door system with a door that opens automatically when you walk in front of it.
I'm using this piece of code:
local map = ...

function map:on_started()
  self:enable_doors()
end

function map:enable_doors()
  for door in map:get_entities("house_door") do
    door:set_enabled(false)
    local sensor = map:get_entity(door:get_name() .. "_opening_sensor");
    function sensor:on_activated()
      sol.audio.play_sound("door_open");
    end
    function sensor:on_left()
      door:set_enabled(true);
      sol.audio.play_sound("door_closed");
    end
  end
end


The names have to be something like "house_door1" and "house_door1_opening_sensor".

When I tried it, it worked fine at first.
But then things went really weird. I wasn't able to figure out a scheme yet, it's just that it does work sometimes and sometimes it doesn't.
Some things I have already noticed:
1. Even changes that should have nothing to do with a door and a sensor, like adding some tiles elsewhere can stop the correct opening of the door.
2. It makes a difference whether I run the quest by opening the "solarus_run.exe" or whether I run it directly from the quest editor. It's already happened that the exactly same quest worked fine on the one and it didn't open the door on the other.
3. Additionally to point 2, another difference between running the quest from the editor and manually executing it is, that the latter returns this error in the "error.txt" file
Error: In on_started: [string "maps/somewhere.lua"]:10: attempt to index local 'sensor' (a nil value)
On the other hand, the running-from-editor version doesn't return an error and in fact, it never ever has.
EDIT: I just noticed that the running-from-editor version is returning the same errors in the "error.txt" file as well. It's just that it doesn't use the "error.txt" file in the same path of the quest but the "error.txt" file in the path of the solarus engine.

So this bug appears to be a very crazy thing that is confusing me very much at this very moment ::). Perhaps I have simply made a normal mistake in my code but I suppose that it is some kind of bug of the editor. Any help is VERY appreciated.
Thank you in advance :)
#6
Bugs & Feature requests / Dialog bugs
June 07, 2015, 07:27:21 PM
The new dialog editor is a great thing but it seems to contain two bugs: At first, the last line of a dialog is not displayed. I'm currently inserting an empty line at the end of each message as a workaround. Second, when a treasure is picked the messages are displayed with a delay: At first the treasure sound is played, only after the sound has ended, the item is brandished and the dialog is displayed. I haven't yet found out how to solve this problem.

P.S: Please forgive me any grammatical mistakes, I have the feeling I've made a lot of them in this text ;D
#7
Development / About Solarus 1.4.2
June 02, 2015, 02:11:18 PM
Hello there ;D
I'm not sure, whether I have already mentioned how much I am admiring the new 1.4 version of the Editor. Especially because I suppose that I now finally got rid of this annoying "out of memory" Java-Errors. And it was great as well how quick some of the major bugs were fixed. So I'm really impressed. Just two little remarks: At first, is it somehow possible to customize the size of the tabulator. I'm very much used to it and it is  just much too big. As far as I know, it's got the size of ten whitespaces which I consider quite a stupid default size.
Second, when I load an other project in the editor, the data files of the old project are still open. I don't know whether this is intentioned but it doesn't really make sense in my opinion because I often think that it hasn't changed the project then.
But these are just two minor problems, I'm very happy to be finally able to delete Java in any way.
#8
Hello,
I have two maps in a dungeon. One has got a hole surrounded by some traversable ground and thin walls, as in attachment 1
The other one is over the first one and has got traversable ground with a hole around, as in attachment 2
So i want the hero to fall from the hole in the second map down to the traversable ground in the first map. To achieve that I use teleporters in the circular hole of the upper map that keep the same point. But something very strange is going on: When I fall into the hole from the left or from the right, everything works fine, which means the hero respawns at the correct x-coordinate in the lower map. But when I enter the ring-shaped hole from the north, I am stuck in a wall of the lower map, though it doesn't look like the hero is touching the wall somehow.
So far I've tried the following:
1. I've tried to move the hole in the upper map 8 pixels to the north and to the left. If I move it to the north, the hero is stuck in the wall too, but this time he also looks like he is stuck in the wall. When I move it to the south, the hero spawns not exactly at the correct place, as my check number 3 showed, but he is not stuck in the wall. Instead, I'm stuck in the wall when entering the upper hole from the south. So apparently my teletransporters in the upper map seem to be placed at the right position, still the hero can't move when he respawns in the lower map
2. I've checked for some invisible barriers that might block the hero when he's falling down, though he spawns at the right position. But I was able to walk around the hole when I respawned at a correct place.
3. I've put some sensors around the hole in the lower map to check whether the hero is landing at the correct point. Result: Neither when I fell down from the north, nor when I fell down from the south, the sensors were triggered. When I landed at the east of at the west, the sensors were triggered.
4. I've checked whether the circular hole in the upper map has the same size as the circular traversable ground in the lower map. This is the case.

So this doesn't seem to make any sense. Please anyone help!
The bread

#9
Perhaps this is a known issue, but in one of my solarus projects the hero is always turning to the north after walking right. I can walk to the right, but as soon as I release the right key, the hero is turning to the north. I couldn't figure out any system behind this behaviour yet, because in an other project, everything works fine.
#10
Development / Display text messages like tiles
March 18, 2015, 06:58:49 PM
Hello,
as it already says in the title, I'd like to display some text messages like tiles. That means:
1. The hero should be able to move while the message is being displayed
2. The hero should be able to walk over the message, too.
3. The text should disappear like a normal tile if I have a map greater than 320x240 and walk away
I thought it would be much too much work if I had to add a new tile to the tileset every time I want to display a message like this. A text surface seemed to be a good idea but I couldn't figure out where to draw it to let it work correct for point three. map:on_draw, game:on_draw and sol.main:on_draw draw it at a fixed position on the screen. Any help is very appreciated.
#11
Bugs & Feature requests / Game over Menu doesn't appear
February 20, 2015, 07:52:28 PM
Ok, I guess I'm really stuck now and it's not my fault >:( :-\ :'(
I just played Zelda Mystery of Solarus DX when I died and then neither the game over sequence with the red circle nor the do-you-want-to-restart menu appeared. So I can't think of any other ideas than closing the game and hope that I have saved in the last time. I've attached a screenshot to this post. The dungeon where I am is number 8. The game-over sequences usually work well.
Can't remember when I saved the last time :-\ *sigh*
#12
Development / New tile is not working correctly
February 18, 2015, 09:22:18 PM
I've just added my own tile to the tileset "house" of the alttp-pack. I inserted it into the house.tiles.png file with GIMP and marked it as a new tile in the tileset-editor of the game-creation editor. It has got the ground "empty" and the default layer low. Displaying the tile in my maps works fine, but bringing the tile to the front doesn't seem to work properly on the tile. I wanted it to overlap the sprite of an item ("apples") that is on the low layer too, but whatever I do, the apples are always over the tile, not the other way round. However, my new tile overlaps the ground of the house properly. Have I done anything wrong at creating the tile, or can't a tile from the tileset be higher than the sprite of an entity. Any ideas???
I would appreciate any help very much.
Thanks, the bread.
#13
Zelda Mystery of Solarus DX / Translation bug
February 18, 2015, 05:26:00 PM
When I played the german version of Zelda Mystery of Solarus DX, I noticed that the tiger scroll you need for the advanced spin attack was called "Knochenschlüssel" in German (engl. "bone key"). Yeah, it doesn't really matter, I'm just mentioning...
#14
Bugs & Feature requests / Empty lines don't disappear
February 06, 2015, 09:38:10 AM
I just tried changing my old dialog box system (the standard one) to the one that is shown in the video-tutorials, part 5. Of course, I had lots of empty lines in my dialogs then since four lines fit into the new dialog box, but only three lines in the standard one. So when I simply tried to delete this empty lines by pressing the backspace key, but though they disappeared in the editor they still were there unchanged in the game. Also, when I closed the dialogs.dat file in the editor it didn't show any message that the file was not saved, but when I opened the file again, it showed the empty lines again. This is annoying me >:(
However, editing the dialogs.dat in notepad++ works fine  ;D
Another thing that isn't related to this topic but also annoys me often is that the error.txt file doesn't get cleared after the error is fixed. So I've already spent lots of time trying to fix issues I had already fixed instead of searching for another reason.
I hope someone will fix this issues although they are not very serious ones.
#15
Bugs & Feature requests / Something that might be a bug
January 29, 2015, 09:28:26 PM
Hello,
I'm not sure if this is a bug after all, and it is not important, but I just mention it.  ;D
When I was fighting against the fourth boss, this kind of plant, I noticed that some of the little things it sends out were somehow flickering. I mean that they turned invisible and just appeared sometimes for a short time. Attacking or being attacked by this monsters works absolutely fine. Also, if you hit them with the hookshot, they become visible permanently. So probably it's meant to work that way, but I thought I might be able to help someone if I mentioned this...
-The bread
#16
Development / Where can I get information???
January 28, 2015, 09:01:56 PM
Hello,
I'm new on Solarus and by now I'm just practising a little. Solarus is great, but I just get stuck at lots of easy parts :(
Right now, I'm having two problems:

The first one is, I just can't figure out, how to display a normal dialogue, just like the one, that shows up, when you pick up a sword or something. How can I achieve this?
I've already searched the Video-Tutorials, the documentation and the source code of Mystery of Solarus but nope, no answer. I'm fine with the standard design but I just can't display a message...

The second one is, that I want to have a hole that teleports you somewhere, but only, if you have killed a particular enemy before.
How does this work? I've already tried giving the teleporter an ID and change the enabled value, like this..
main.lua:
solarus_logo.on_finished = function()
   --here is some other code
    local porter = sol.map:get_entity("dynamic_porter");
    porter:set_enabled(false);
  end


tentacle.lua:
function enemy:on_dead()
local porter = sol.map:get_entity("dynamic_porter");
porter.set_enabled(true);
end


But it just shows up the following error message in error.txt:
Error: In on_finished: [string "main.lua"]:25: attempt to call method 'get_entity' (a nil value)

So it would be very nice *hopeful grin* if anyone could help me with one of these problems, but since I don't want to bother you with basic questions all the time, my major question is:
Is there any other place where I can get more information? A tutorial for the LUA-API or such a thing? The French tutorials probably contain more information, but my French skills end with "Comment tu't appelles?" Everything is so unclear and confusing...
Well then, I hope anyone can help me ;) Please! ;D