Skip to main content

News

Topic: Project ZeC (My Zelda-esque Clone) (Read 61324 times) previous topic - next topic

0 Members and 6 Guests are viewing this topic.
Re: Project ZeC (My Zelda-esque Clone)
Reply #150
Fair enough, about the ownership thing. It didn't seem to matter much to me for little preview pics.

Granted, it may not seem like much because they are small little animated images that play for just a few seconds. Yet, they represent a depiction (a time scaled version) of what could be minutes to hours of time spent in production (Coding, Plot writing, Graphic Design (granted the sprites are not originally created by me but having to recreate them at smaller sizes), etc...) for me.
  • Last Edit: September 13, 2017, 09:24:19 am by Miscreant
"I am to misbehave." - Malcom Renyolds, Captain of Serenity

Re: Project ZeC (My Zelda-esque Clone)
Reply #151
Back on Topic: I created a map composed of all Hyrule specifically for in game cutscenes. For the other ones I've designed the map functions well. I've made a backup of it and am editing that one for the arrival of Setzer in Hyrule. In the original version, the Airship appeared to close to the ground. I've been attempting to rescale the map to give the appearance that the Airship is high above in the air. So far, my attempts make Hyrule look blah... any suggestions?
"I am to misbehave." - Malcom Renyolds, Captain of Serenity

Re: Project ZeC (My Zelda-esque Clone)
Reply #152
I'd really like to use Setzer's Airship "The Blackjack", however, if I am unable to come up with a solution to my map scaling issue perhaps I could use "The Enterprise". It is from the wrong game though. "The Enterprise" was from Final Fantasy 2.
"I am to misbehave." - Malcom Renyolds, Captain of Serenity

Re: Project ZeC (My Zelda-esque Clone)
Reply #153
Opinion Poll:

Which do you like more?
"I am to misbehave." - Malcom Renyolds, Captain of Serenity

Re: Project ZeC (My Zelda-esque Clone)
Reply #154
Hmmm... It's kinda cool with the viney-leafy bits coming off it. I'm voting for the leafy Wood Sword.

Re: Project ZeC (My Zelda-esque Clone)
Reply #155
When you upgrade to the normal sword, the Old Man states "Take this sword with you. I'm sure it will be better than that twig..."
"I am to misbehave." - Malcom Renyolds, Captain of Serenity

Re: Project ZeC (My Zelda-esque Clone)
Reply #156
Gorram....

The pain that this was to get functioning in both directions...
"I am to misbehave." - Malcom Renyolds, Captain of Serenity

Re: Project ZeC (My Zelda-esque Clone)
Reply #157
Cleaned up the Overworld map considerably.

Just a few examples...
"I am to misbehave." - Malcom Renyolds, Captain of Serenity

Re: Project ZeC (My Zelda-esque Clone)
Reply #158
In the original Legend of Zelda, when Link walks to a different map the map scrolls on to the screen. If he walks south the map scrolls from bottom to top. If he walks west the map scrolls from left to right.

Can a map itself be coded to scroll onto the screen. ChangeMap() just changes the map, nothing fancy just heres the map. Is this a functionality that is possible with sphere or minisphere?
  • Last Edit: September 13, 2017, 05:31:35 pm by Miscreant
"I am to misbehave." - Malcom Renyolds, Captain of Serenity

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • Sphere Developer
Re: Project ZeC (My Zelda-esque Clone)
Reply #159
It can be done but it's not trivial.  @Radnen would be the person to ask about that, his Blockman game had the Zelda-like scrolling effect I think.
neoSphere 5.9.2 - neoSphere engine - Cell compiler - SSj debugger
forum thread | on GitHub

Re: Project ZeC (My Zelda-esque Clone)
Reply #160
I'm beta testing level 4. One room example has doors on the Northern and Southern walls. The room to the north has all 4 doors. When, I move from one room to the next, the Western and Eastern doors just appear. I was trying to figure out a smoother way to transition between rooms. I thought, maybe, the LoZ way might prevent that from occurring. For the time being, I put a short FadeOut() in to my map exits coding. I'll add a fancy room transition to the task list...
  • Last Edit: September 13, 2017, 06:26:26 pm by Miscreant
"I am to misbehave." - Malcom Renyolds, Captain of Serenity

  • Rhuan
  • [*][*][*][*]
Re: Project ZeC (My Zelda-esque Clone)
Reply #161
Hmm my sphere v2 map engine could easily make a map scroll onto the screen, doing it with the v1 map engine is trickier.

Assuming you just want to slide the specific map the map engine is currently handling, roughly you could:
a) set up a variable var map_image;
b) Have a loop using UpdateMap() and RenderMap() to process the map and draw it to the buckbuffer
c) also in the loop do map_image = GrabImage(0, 0, GetScreenWidth(), GetScreenHeight());
d) you may wish to clear the screen (e.g. by drawing a black rectangle)
d) use map_image.blit(x,y); to draw the map, you'd move the x/y to get it where you want it - you'd then need a FlipScreen() to draw it.

Alternatively you may be able to do this as a renderscript something like this:

Code: [Select]
var map_image;
var w = GetScreenWidth();
var h = GetScreenHeight();
var black = CreateColor(0,0,0);
var x = 0;
var y = -h;
function sliding_map()
{
  map_image = GrabImage(0, 0, w, h);
  Rectangle(0, 0, w, h, black);
  map_image.blit(x, y);
  ++y;
  if(y ==0)
  {
    SetRenderScript("");
  }
}
SetRenderScript(sliding_map);
(note this is totally untested);

Re: Project ZeC (My Zelda-esque Clone)
Reply #162
Link in Setzer's airship.

@Rhuan I'll test that piece of code in a little while and let you know if it functions.
"I am to misbehave." - Malcom Renyolds, Captain of Serenity

  • Rhuan
  • [*][*][*][*]
Re: Project ZeC (My Zelda-esque Clone)
Reply #163
Looking back it I'm nervous about variable scoping - the RenderScript probably gets called in a different context to wherever it's set up so you may have to make all of the variables it uses global, then just reset the y coordinate and set the script when you're ready for it.

Re: Project ZeC (My Zelda-esque Clone)
Reply #164
Quote from: Rhuan
Code: [Select]
var map_image;
var w = GetScreenWidth();
var h = GetScreenHeight();
var black = CreateColor(0,0,0);
var x = 0;
var y = -h;
function sliding_map()
{
  map_image = GrabImage(0, 0, w, h);
  Rectangle(0, 0, w, h, black);
  map_image.blit(x, y);
  ++y;
  if(y ==0)
  {
    SetRenderScript("");
  }
}
SetRenderScript(sliding_map);

Looking back it I'm nervous about variable scoping - the RenderScript probably gets called in a different context to wherever it's set up so you may have to make all of the variables it uses global, then just reset the y coordinate and set the script when you're ready for it.

From the above code: w, h, black are already defined as global vars. I have a global_constants.js. It's the first script I evaluate after the two system scripts I use. Many of my functions pull variables from it regularly. I have the w & h defined in it at GW, GH. A large portion of my x, y values are on a per function basis. Unless I need absolute positioning, they are mostly just calculations of GW & GH.

Also, since I've added in the player_info() at the bottom of the screen my maps are not the full screen height. There is a 4 tile gap between the map and GH. That would probably make the h value an absolute.

Edit: I guess you could call it a personal preference but my "black" is not true black. I use no true black anywhere. Everything in the tiles and spritesets that was 0,0,0 is all 10,10,10.
  • Last Edit: September 13, 2017, 09:45:44 pm by Miscreant
"I am to misbehave." - Malcom Renyolds, Captain of Serenity