SHININGRIVER'S PROFILE

I do freelance photoshop and writing in my free time. I'm also a computer programmer.

Search

Filter

Estopolus: Requiem of Spirits

For some reasons, I can't get past these boulders. From the previous posts, I saw that you need to push 'a' down, 'c' right, and 'b' up... but there's a small geyser-like tile that's blocking the path, not allowing you to push 'b' up. I've attached a screenshot:

ONYX

--comment deleted--

Turning Tiles?

After some more testing, it seems that the 2x2 block has an error. When a part of it is blocked and the rest isn't, the unblocked section still moves, changing its shape (for example, the NE tile is blocked and you pushed the entire thing up, the NE will stay still, but the NW and SW block will move up.

Turning Tiles?

I removed the wait part for all of them. Now they look like they move together. :-)

I'll see if I could combine the two events together so that they won't bump each other...

Turning Tiles?

The 2x2 tile was a little awkward, since it's moving part by part and not as a whole. There's a small, annoying lag that I want to remove, but I don't know how.
I've tested this with a 2x2 tile, and it works (1Tile is on NW, 2Tile is on NE, 3Tile is on SW, 4Tile is on SE)
Settings:
Speed: 6:x4 Faster, Freq: 5:Highest (It's simply not fast enough.
Priority: Above Characters
Trigger: Player Touch
Walking Animation Off
@>Conditional Branch: Player is Facing Down
  @>Set Move Route: [3Tile](Wait)
  :               : $>Through ON
  :               : $>Move Down
  :               : $>Through OFF
  @>Set Move Route: [4Tile](Wait)
  :               : $>Through ON
  :               : $>Move Down
  :               : $>Through OFF
  @>Set Move Route: This event(Wait)
  :               : $>Through ON
  :               : $>Move Down
  :               : $>Through OFF
  @>Set Move Route: [2Tile](Wait)
  :               : $>Through ON
  :               : $>Move Down
  :               : $>Through OFF
  :Else
  @>Conditional Branch: Player is Facing Right
    @>Set Move Route: [2Tile](Wait)
    :               : $>Through ON
    :               : $>Move Right
    :               : $>Through OFF
    @>Set Move Route: [4Tile](Wait)
    :               : $>Through ON
    :               : $>Move Right
    :               : $>Through OFF
    @>Set Move Route: [3Tile](Wait)
    :               : $>Through ON
    :               : $>Move Right
    :               : $>Through OFF
    @>Set Move Route: This event(Wait)
    :               : $>Through ON
    :               : $>Move Right
    :               : $>Through OFF
    :Else
    @>Conditional Branch: Player is Facing Up
      @>Set Move Route: This event(Wait)
      :               : $>Through ON
      :               : $>Move Up
      :               : $>Through OFF
      @>Set Move Route: [2Tile](Wait)
      :               : $>Through ON
      :               : $>Move Up
      :               : $>Through OFF
      @>Set Move Route: [3Tile](Wait)
      :               : $>Through ON
      :               : $>Move Up
      :               : $>Through OFF
      @>Set Move Route: [4Tile](Wait)
      :               : $>Through ON
      :               : $>Move Up
      :               : $>Through OFF
      :Else
      @>Conditional Branch: Player is Facing Left
        @>Set Move Route: This event(Wait)
        :               : $>Through ON
        :               : $>Move Left
        :               : $>Through OFF
        @>Set Move Route: [3Tile](Wait)
        :               : $>Through ON
        :               : $>Move Left
        :               : $>Through OFF
        @>Set Move Route: [4Tile](Wait)
        :               : $>Through ON
        :               : $>Move Left
        :               : $>Through OFF
        @>Set Move Route: [2Tile](Wait)
        :               : $>Through ON
        :               : $>Move Left
        :               : $>Through OFF
        :Else
      : Branch End
    : Branch End
  : Branch End
: Branch End


Like what I've mentioned, it is simply not fast enough, as it acts one by one and not simultaneously. It's enough to simulate a move, but... still. :-)

Turning Tiles?

That's... not good. I was hoping to have a simple 2x2 tile event at the least... it's gonna be a challenge... T___T
I'll try to play some more with Ace to see what can be done... but I have to go to work first... meh XD

Edit:
I felt that since I'm moving more than 1 tile at a time (in the case of a 2x2 tile and a 1x5 tile), I felt that this would also need a switch... or some switches.

Edit 2:
Though inefficient, I thought of using 4 switches for the 2x2 tile, each switch would pertain to which direction it is going to after pushed. So each tile would have to move according to which switch is turned on. I'll experiment on this and post the results later...

Turning Tiles?

While I was playing around, I managed to get something working... I used 12 switches (4 directions for each tile, 3 tiles on that map) to check the position of each tile, and I made conditional branches and conditions per event...

North Tile:
page 1: Condition: NorthTile_1_N is On, Player Touch
@>Conditional Branch: Player is Facing Left
  @> Set Move Route: [WestTile_1](Wait)
  :                : $>Through ON
  :                : $>Move Down
  :                : $>Move Right
  :                : $>Through OFF
  @> Set Move Route: This event(Wait)
  :                : $>Through ON
  :                : $>Move Left
  :                : $>Move Down
  :                : $>Through OFF
  @> Set Move Route: Player(Wait)
  :                : $>Through ON
  :                : $>Move Left
  :                : $>Move Left
  :                : $>Through OFF
  @> Set Move Route: [EastTile_1](Wait)
  :                : $>Through ON
  :                : $>Move Up
  :                : $>Move Left
  :                : $>Through OFF
  @>Control Switches: [0001..0012] = OFF
  @>Control Switches: [0002:NorthTile_1_W]=ON
  @>Control Switches: [0002:WestTile_1_S]=ON
  @>Control Switches: [0002:EastTile_1_N]=ON
: Else
  @>Conditional Branch: Player is Facing Right
    @> Set Move Route: [EastTile_1](Wait)
    :                : $>Through ON
    :                : $>Move Down
    :                : $>Move Left
    :                : $>Through OFF
    @> Set Move Route: This event(Wait)
    :                : $>Through ON
    :                : $>Move Right
    :                : $>Move Down
    :                : $>Through OFF
    @> Set Move Route: Player(Wait)
    :                : $>Through ON
    :                : $>Move Right
    :                : $>Move Right
    :                : $>Through OFF
    @> Set Move Route: [WestTile_1](Wait)
    :                : $>Through ON
    :                : $>Move Up
    :                : $>Move Right
    :                : $>Through OFF
    @>Control Switches: [0001..0012] = OFF
    @>Control Switches: [0002:NorthTile_1_E]=ON
    @>Control Switches: [0002:WestTile_1_N]=ON
    @>Control Switches: [0002:EastTile_1_S]=ON
  : Else
  : Branch End
: Branch End

The process somewhat repeats on the rest of the 4 pages, two of them are if the player is facing up and down. It kinda works, and right now I'm just tracing the code and checking if all scenarios work. So far, it does (at least for the North tile, I'm checking events if I start with the West tile). :-)

Edit:

It's actually working now, yay! As for the next challenge, I'll try to make variants of this turning tile (one flap, two straight flaps, two L flaps).

I have another question, though. is it possible to do a boulder-move thinggy on a boulder that's more than a tile size (for example, 2x2, 1x5, ect)?

Turning Tiles?

I'm not sure about ace if it has one...
I made sure about the existence of tiles in certain position by arranging their movement. For example, one tile moves first to free the space, then the next one moves.

EDIT:

Okay, so I managed to edit them to make them move... now, the problem is making them move correctly...

EDIT:

I got another thought, that the turning would consider where the tile is located (either N, S, W, or E of the middle tile) to perform the rotation...
For example, at the start, the N tile is on the North, the W tile is on West, and E tile on the East.
Condition 1: If the N tile is at north (it follows that W is on West and E on East)
Move W tile to south
Move N tile to West
Move E tile to North
and so forth...
It's getting more and more complicated... haha....

Turning Tiles?

Okay, so I did this:
North Tile
Conditional branch: player is facing left
> Set Move Route: [WestTile_1](Wait)
  :$>Move Down
  :$>Move Right
> Set Move Route: This Event(Wait)
  :$>Move Left
  :$>Move Down
> Set Move Route: Player(Wait)
  :$>Move Left
  :$>Move Left
> Set Move Route: [EastTile_1](Wait)
  :$>Move Up
  :$>Move Left
: Else
Conditional branch: player is facing right
> Set Move Route: [EastTile_1](Wait)
  :$>Move Down
  :$>Move Left
> Set Move Route: This Event(Wait)
  :$>Move Right
  :$>Move Down
> Set Move Route: Player(Wait)
  :$>Move Right
  :$>Move Right
> Set Move Route: [WestTile_1](Wait)
  :$>Move Up
  :$>Move Right
:Else
Branch End
Branch End


But the tiles aren't moving.

Turning Tiles?

author=Marrend
Logically speaking, yes. The player's facing would determine which direction the boxes are being rotated in. I mean, pressing up on the "east" box should cause a different rotation than pressing up on the "west" box!

If you want to be slick, set a move-route for the boxes to make them look like they are being rotated. You'd still use the switches to keep track of things, but player's shouldn't notice it (in theory). However, that's more of a final touch. Getting the basic system down has higher priority.

I'll give it a try and see what happens. Another question is that, is it possible to do a boulder-move thinggy on a boulder that's more than a tile size (for example, 2x2, 1x5, ect)?

Edit: I managed to start with it, but for some reasons, the tiles move continuously! Here's what I have so far..

North Tile has 1 event
page 1:
Conditional branch: player is facing left
> Control Switch: [0001:NorthTile_1Left] = ON
> Set Move Route: This event (Wait)
  :$>Move Left
  :$>Move Down
: Else
Conditional branch: player is facing right
> Control Switch: [0001:NorthTile_1Right] = ON
> Set Move Route: This event (Wait)
  :$>Move Right
  :$>Move Down 
:Else
Branch End
Branch End

West Tile has 3 events
page 1:
Conditional branch: player is facing down
> Control Switch: [0001:WestTile_1Down] = ON
> Set Move Route: This event (Wait)
  :$>Move Down
  :$>Move Right
: Else
Conditional branch: player is facing up
> Control Switch: [0001:NorthTile_1Up] = ON
> Set Move Route: This event (Wait)
  :$>Move Up
  :$>Move Right 
:Else
Branch End
Branch End
page 2 (Condition: NorthTile_1Left is on):
> Set Move Route: This event (Wait)
  :$>Move Down
  :$>Move Right
page 3 (Condition: NorthTile_1Right is on):
> Set Move Route: This event (Wait)
  :$>Move Up
  :$>Move Right

The west tile moves indefinitely.