Xyphien Forums

Hello Guest!. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, sell your games, upload content, as well as connect with other members through your own private inbox!

My worst problem

Status
Not open for further replies.
So maybe a few of you guys may have already known my problem. My Problem is: I have a ship ingame. Its drivable etc so just the standard rpg maker mv ship. Now i want my Player to visit the interior of that ship. (Like in the game dragon quest 9) Now me and @Cunechan are already searching for an appropiate solution but we keep failing. (maybe its just a simple mistake that makes the whole thing go nuts).

So here are a few screens of how i have made my event and then a test afterwards.

2016-08-30.png

Sorry it is in german since it's my native language.

The common event will be triggered by the plugin ButtonCommonEvents.

So after playing my game i tried it our and this happend =

2016-08-30 (7).png

Now i have to say, sometimes i arrive there without the ship but the chances are very low that this is happening. So yeah i arrive in my ship, with my ship.

Next thing i did is leaving the ship =

2016-08-30 (4).png

And yeah the setup is pretty much the same like the common event, but reversed.
After triggering the event with enter i arrive precise where i teleportet to the interior but invisible...

2016-08-30 (9).png

When i leave the map like you normally would (but beeing invisible) this happens:

2016-08-30 (10).png

Yep so here you have my problem. I would find it extremely awesome if someone would help me :3
 
Last edited:

Dad3353

Praised Adventurer
Xy$
0.00
I must say that I'm a bit confused here as to what the problem actually is. To me, 'this happens' is not very explicative.
If I've understood correctly (far from certain...), you are on a Vehicle ( a ship...), you want to go to a Map of a ship, then leave that Map to return to the Vehicle. Is that right..?
I'll see what I can do with that as a description, but I'll simulate by external Event the leaving the Vehicle, as I don't have any Button Event stuff. Back in a while, I hope...
 
I must say that I'm a bit confused here as to what the problem actually is. To me, 'this happens' is not very explicative.
If I've understood correctly (far from certain...), you are on a Vehicle ( a ship...), you want to go to a Map of a ship, then leave that Map to return to the Vehicle. Is that right..?
I'll see what I can do with that as a description, but I'll simulate by external Event the leaving the Vehicle, as I don't have any Button Event stuff. Back in a while, I hope...
Okay i know i did not explain the problem correctly. So i want the Player to be able to acces the interior of the ship while driving it. And then he should be able to go back to the world map and continue driving from where he had teleported to the ship map. And to my "this happens" : Nothing else really happens. You exit your ship and then the whole Ship sprite magicaly gets invisble. A soon as i leave the current map it automatically gets visible again. :( Like arriving in my ship with my ship isnt enough problem for me :/ But thanks that you try to solve my problem too
 

Dad3353

Praised Adventurer
Xy$
0.00
OK; thanks for that. I've just tried it, and it works for me. I'm using fixed coordinates, and a static Event to trigger stuff, but there's no problem with the mechanics. I trigger the transfer to another Map (the ship's deck Map, in your case; a bridge Map for mine...), using an ordinary Event...

◆Play SE:Move1 (90, 100, 0)
◆Transfer Player:Bridge (5,2) (Direction: Left)
◆Get on/off Vehicle
◆Set Vehicle Location:Ship, Hopping (6,4)


The Transfer Direction 'Left' is important, as the path must be clear for the Actor to step off the Ship. It may be another Direction on your Map, but has to be clear for Actor passage.
I send the Vehicle back to its original Map (calles 'Hopping', in my case, different, of course for you...), making sure not to send it to the exact coordinates from which it was sent, as that would create a loop when the Actor rejoins the Vehicle (because I'm using static Events for triggering...).

To go back to the Ship, as a Vehicle, on the Map 'Hopping' from whence we came, I use another Event on the Map 'Bridge'...

◆Play SE:Move1 (90, 100, 0)
◆Transfer Player:Hopping (5,4) (Direction: Right)
◆Get on/off Vehicle


Again, the Direction is critical; the Actor must be sent to a Tile immediately adjacent to the Vehicle, and be facing the Vehicle, to enable boarding.
That's all. I had no issues of transparency or such, it just worked. In your, slightly more sophisticated scenario, you could, of course, use X-Y coordinates saved from the Vehicle's position, and return to there, but that changes nothing as far as the basic functioning is concerned.
I can produce a series of screen shots, if required.
Try it out on a small scale and see what happens..? It worked for me.
 
OK; thanks for that. I've just tried it, and it works for me. I'm using fixed coordinates, and a static Event to trigger stuff, but there's no problem with the mechanics. I trigger the transfer to another Map (the ship's deck Map, in your case; a bridge Map for mine...), using an ordinary Event...

◆Play SE:Move1 (90, 100, 0)
◆Transfer Player:Bridge (5,2) (Direction: Left)
◆Get on/off Vehicle
◆Set Vehicle Location:Ship, Hopping (6,4)


The Transfer Direction 'Left' is important, as the path must be clear for the Actor to step off the Ship. It may be another Direction on your Map, but has to be clear for Actor passage.
I send the Vehicle back to its original Map (calles 'Hopping', in my case, different, of course for you...), making sure not to send it to the exact coordinates from which it was sent, as that would create a loop when the Actor rejoins the Vehicle (because I'm using static Events for triggering...).

To go back to the Ship, as a Vehicle, on the Map 'Hopping' from whence we came, I use another Event on the Map 'Bridge'...

◆Play SE:Move1 (90, 100, 0)
◆Transfer Player:Hopping (5,4) (Direction: Right)
◆Get on/off Vehicle


Again, the Direction is critical; the Actor must be sent to a Tile immediately adjacent to the Vehicle, and be facing the Vehicle, to enable boarding.
That's all. I had no issues of transparency or such, it just worked. In your, slightly more sophisticated scenario, you could, of course, use X-Y coordinates saved from the Vehicle's position, and return to there, but that changes nothing as far as the basic functioning is concerned.
I can produce a series of screen shots, if required.
Try it out on a small scale and see what happens..? It worked for me.
Wish me luck :O Im trying it now. Thanks for that fast response!
 

Cunechan

∠( ᐛ 」∠)_
Xy$
0.00
Woooo answers :D Thank you all so much! This problem is driving us crazy, really. Hope it works and thanks so much for the support~
 
@Dad3353 Okay so teleporting on the ship is now working perfectly. But leaving the interior is still not working

2016-08-30 (11).png

The picture above is the event of the steering wheel on the ship map.
 

LTN Games

Master Mind
Resource Team
Xy$
0.01
Does @Dad3353 work for you? I got the same weird effects you got when doing it with a common event.
Anyways, I got it working using a bit of script calls, almost flawlessly except the changing of transparency when entering inside the ship, not a huge issue.

Common event commands:
◆If:Script:Input.isTriggered('tab')
◆If:Ship is driven
◆Control Variables:#0027 PlayerX = Map X of Player
◆Control Variables:#0028 PlayerY = Map Y of Player
◆Control Variables:#0029 MapID = Map ID
◆Script:$gamePlayer.vehicle().getOff();
◆Script:$gamePlayer.vehicleGettingOff = true;
◆Script:$gamePlayer._vehicleType = 'walk';
◆Set Movement Route:Player (Wait)
: :◇Speed:4
◆Change Transparency:OFF
◆Transfer Player:Inside Ship (7,7)

:End

:End
Back on the world map event. In my case a captain of the ship.
◆Text:People2(3), Window, Bottom
: :Want to take the wheel?
◆Show Choices:Sure thing, Arr, no matey! (Window, Right, #1, #2)
:When Sure thing
◆If:Script:!$gamePlayer.isInVehicle()
◆Set Vehicle Location:Ship, {MapID} ({PlayerX},{PlayerY})
◆Change Transparency:OFF
◆Fadeout Screen
◆Transfer Player:{MapID} ({PlayerX},{PlayerY}) (Fade: None)
◆Script:$gamePlayer._vehicleType = 'ship'
: :$gamePlayer.getOnVehicle();
◆Wait:15 frames
◆Fadein Screen

:End

:When Arr, no matey!

:End
I did a check to make sure the player is not already on vehicle, it's a prototype and that check is not really needed.
That being said I may make a plugin to make this process a hell of a lot easier with a plugin command goinside and another gobacktomap lol.

The final results look like this.
inoutship.gif
 

Attachments

Dad3353

Praised Adventurer
Xy$
0.00
@Mr.Anderson ...

'But leaving the interior is still not working' What, exactly, happens (or doesn't happen...). 'Not working' is not detailed enough.

@LTN Games

That's exactly what mine does (but with less pretty Maps..! ;-). What do you use for capturing those screens..? I can do it, but my way is 'clunky' (a technical term...). Have you a 'smooth' method..?
 

LTN Games

Master Mind
Resource Team
Xy$
0.01
@Mr.Anderson ...

'But leaving the interior is still not working' What, exactly, happens (or doesn't happen...). 'Not working' is not detailed enough.

@LTN Games

That's exactly what mine does (but with less pretty Maps..! ;-). What do you use for capturing those screens..? I can do it, but my way is 'clunky' (a technical term...). Have you a 'smooth' method..?
Well with " nothing happening" i mean nothing important. I just get teleported back to the world map without my ship. OK that is kinda important. :D
[doublepost=1472592078,1472591389][/doublepost]Thank you both! It was the mixture of both of you wich made it possible! Thank you so much @LTN Games and @Dad3353 ! I am so happy right now! You made the impossible ( At least for me and @Cunechan ) possible!!
 

Dad3353

Praised Adventurer
Xy$
0.00
Here's the (clunky...) video of my proposition...

http://youtu.be/bF72Xy_Wv_U
[doublepost=1472593804,1472593300][/doublepost]
...I just get teleported back to the world map without my ship....
Did you send the Ship back to the Ocean Map after having got off..? When you arrive on the Deck, you are the vehicle. Once you get off, it's a separate entity. It won't go back to the Ocean Map on its own. That's the purpose of the fourth line...

◆Play SE:Move1 (90, 100, 0)
◆Transfer Player:Ship_Deck (9,9) (Direction: Up)
◆Get on/off Vehicle
◆Set Vehicle Location:Ship, Ocean (3,9)

You would use the X-Y that you should have captured before transferring, of course; I'm just using static Events. I'll do another with X-Y and post here.
[Terminator] I'll be back... [/Terminator]

Here's the 'Send to Deck'...

◆Play SE:Move1 (90, 100, 0)
◆Control Variables:#0017 Dumm_Region = Map ID
◆Control Variables:#0018 Dumm_X = Map X of Player
◆Control Variables:#0019 Dumm_Y = Map Y of Player
◆Control Variables:#0019 Dumm_Y += 1
◆Transfer Player:Ship_Deck (9,9) (Direction: Up)
◆Get on/off Vehicle
◆Set Vehicle Location:Ship, {Dumm_Region} ({Dumm_X},{Dumm_Y})


... and the 'Return to Sailing'...

◆Text:None, Window, Bottom
: :Do you wish to return to sailing..?
◆Show Choices:Yes, No (Window, Right, #1, #2)
:When Yes
◆Play SE:Move1 (90, 100, 0)
◆Control Variables:#0018 Dumm_X -= 1
◆Transfer Player:{Dumm_Region} ({Dumm_X},{Dumm_Y}) (Direction: Right)
◆Get on/off Vehicle

:When No

:End


The changes made to X and Y are to avoid, for my case, being sent back to my starting point, which would trigger a 'Send to Deck' again. I send the Ship back to a Tile just South, and send the Actor to a Tile just West of that. It works just the same, otherwise.
 
Last edited:
Here's the (clunky...) video of my proposition...

http://youtu.be/bF72Xy_Wv_U
[doublepost=1472593804,1472593300][/doublepost]

Did you send the Ship back to the Ocean Map after having got off..? When you arrive on the Deck, you are the vehicle. Once you get off, it's a separate entity. It won't go back to the Ocean Map on its own. That's the purpose of the fourth line...

◆Play SE:Move1 (90, 100, 0)
◆Transfer Player:Ship_Deck (9,9) (Direction: Up)
◆Get on/off Vehicle
◆Set Vehicle Location:Ship, Ocean (3,9)

You would use the X-Y that you should have captured before transferring, of course; I'm just using static Events. I'll do another with X-Y and post here.
[Terminator] I'll be back... [/Terminator]

Here's the 'Send to Deck'...

◆Play SE:Move1 (90, 100, 0)
◆Control Variables:#0017 Dumm_Region = Map ID
◆Control Variables:#0018 Dumm_X = Map X of Player
◆Control Variables:#0019 Dumm_Y = Map Y of Player
◆Control Variables:#0019 Dumm_Y += 1
◆Transfer Player:Ship_Deck (9,9) (Direction: Up)
◆Get on/off Vehicle
◆Set Vehicle Location:Ship, {Dumm_Region} ({Dumm_X},{Dumm_Y})


... and the 'Return to Sailing'...

◆Text:None, Window, Bottom
: :Do you wish to return to sailing..?
◆Show Choices:Yes, No (Window, Right, #1, #2)
:When Yes
◆Play SE:Move1 (90, 100, 0)
◆Control Variables:#0018 Dumm_X -= 1
◆Transfer Player:{Dumm_Region} ({Dumm_X},{Dumm_Y}) (Direction: Right)
◆Get on/off Vehicle

:When No

:End


The changes made to X and Y are to avoid, for my case, being sent back to my starting point, which would trigger a 'Send to Deck' again. I send the Ship back to a Tile just South, and send the Actor to a Tile just West of that. It works just the same, otherwise.
Thanks its working fine now :D But i dont understand why you did that
◆Control Variables:#0019 Dumm_Y += 1
 

Dad3353

Praised Adventurer
Xy$
0.00
Thanks its working fine now :D But i dont understand why you did that

My 'Send' Event is on X3Y7 of the Ocean Map. If I send the Ship back to that same coordinate, and then board there when the Actor returns, it'll trigger the 'Send' Event and find myself back on Deck..! I send the Ship back to X3Y8, and the Event that sends the Actor back to the Ocean Map sends him to X2Y8, ready to step back on board and so 'become' the Vehicle again.
I only do this, on my Map, because I'm not using an independent 'Button Event'. In that case, the Ship can be sent back to its original X-Y, as the return of the Actor would not, of itself, trigger the 'Send to Deck' Event.
Does it make sense now..?
 
My 'Send' Event is on X3Y7 of the Ocean Map. If I send the Ship back to that same coordinate, and then board there when the Actor returns, it'll trigger the 'Send' Event and find myself back on Deck..! I send the Ship back to X3Y8, and the Event that sends the Actor back to the Ocean Map sends him to X2Y8, ready to step back on board and so 'become' the Vehicle again.
I only do this, on my Map, because I'm not using an independent 'Button Event'. In that case, the Ship can be sent back to its original X-Y, as the return of the Actor would not, of itself, trigger the 'Send to Deck' Event.
Does it make sense now..?
Yeah it does. Thank you :) You and LTN Games made my game a lot better then it was before. You 2 will be mentioned in the Credits. Of course only if you allow it!
 

LTN Games

Master Mind
Resource Team
Xy$
0.01
Closing this topic due to being solved, if for any reason you would like this re-opened please report the post or contact a moderator.
 
Status
Not open for further replies.
Top