|
Post by Foz on Dec 20, 2006 16:27:20 GMT
Has anyone actually mapped out any of the tyrian level design? Say, in a Mappy format or something like that?
If not, do some people feel up to the challenge of doing one? I'll start it off if people are feeling up to it, however the map design is a huge challenge, as there are 4 map layers (from what I can tell) in each level, the bottom one being the shortest, and the top one being the longest.
This is of course a little project to make a Tyrian clone for Christmas (5 days! eek!), and so far I have a Christmas USP Talon flying around the screen and a bunch of animated U-Fighters flying down the screen. (I'm aiming for just one fully working level for Christmas).
I need to finish the enemy timings, paths and shot timings/directions for a level. Oh, and of course collision detection, and plug in the engine/shield/power/armour levels :-)
Cheers, Foz
|
|
|
Post by Mindless on Dec 20, 2006 18:47:24 GMT
|
|
|
Post by Foz on Dec 20, 2006 19:21:51 GMT
I think you may have misunderstood me - I have the graphics, but what I'm talking about is the actual level design, which tiles to use, and where they all go.
I checked the hacking sections, and the actual level content still hasn't been solved yet, so my question is, has anyone actually duplicated a level yet of their own, preferably using something that I can plug into, like a mappy file format. (of course, mappy falls down heavily for a tyrian level design, because each layer is a different size)
Thanks, ~ Foz
|
|
|
Post by death on Dec 21, 2006 4:45:12 GMT
one person has, but the level is odd and a bit buggy,
|
|
|
Post by Gamera on Dec 30, 2006 5:22:35 GMT
He posted an explanation somewhere. Maybe it was on the old boards.
|
|
|
Post by Foz on Dec 30, 2006 15:55:31 GMT
It doesn't matter, I'm recreating the first level from scratch, all I was wanting was to see if anyone had already done it in a more... open format (I'm using mappy), as I didn't have to spend an age doing it myself. I'll release something soon (it won't be a complete Tyrian level, but it will be the start of it to give people an idea of where it can go), I've got the ships so they can be programmed to do anything I want at any time, I'm just sorting out the collision detection/energy draining event, after that firing weapons and then hooking up power/weapons/shields. And then finally putting in the rest of the animations (shields, blowing up, etc). Once I'm happy enough that it can be expanded by others, it will be time to move onto the menu side of things, but thats for the future
|
|
|
Post by Foz on Jan 3, 2007 18:13:37 GMT
While trying to make a clone, and looking up all I can on how the levels are built, I've come to a horrific truth: I don't think it will be possible to make a true tyrian clone with modern programming languages.
The reasoning for this is that in each level it has it's own timed assembly code which can alter and change any part of the program while playing a level, at any point of time. Although I *could* replicate the same engine, from a level design point of view, it is an absolute nightmare, so I'm not going to bother with that extreme.
Although it is a blow, it hasn't deterred me. I will have a playable level, one way or another!
~ Foz
|
|
|
Post by shawn on Jan 3, 2007 20:17:47 GMT
Rip the graphics and use them to map an area in Game Maker. I can replicate the engine, too, but it's simply a matter of simplicity and how efficient you can debug... The programming script would be hard to follow.
|
|
|
Post by Foz on Jan 3, 2007 23:20:24 GMT
How does this look to you as a script for an individual enemy?
This particular script will send the enemy down the left side of the screen, and then sweeps in a curve to the right side of the screen, and then finally goes back up the screen.
using System; using System.Drawing; class Script { public static object Tick(int LevelTimer, int InternalCounter, int CentreLine, int X, int Y) {
Point tempPoint = new Point(0,0); if (InternalCounter < 540) { Y++; tempPoint = new Point(CentreLine - 300, Y); } else if (InternalCounter < 630) { Y+=2; tempPoint = new Point (CentreLine + (int)(Math.Cos((Math.PI / 180.0) * InternalCounter) * 300), Y); } else if (InternalCounter < 720) { Y -= 2; tempPoint = new Point (CentreLine + (int)(Math.Cos((Math.PI / 180.0) * InternalCounter) * 300), Y); } else { Y--; tempPoint = new Point (CentreLine + 300, Y); } return tempPoint; } }
If you think a BASIC style script would be better, let me know!
This is of course only the scripting side of things, I'm still building the level designer, so the maps, enemies and their scripts can be all put together in one place.
~ Foz
|
|
|
Post by gencoreoperative on Jan 8, 2007 14:00:37 GMT
For my Tyrian Remake demo which was released on these forums last Christmas, I developed a mapping system which handled the Parralax scrolling map. I can provide details of this if it is useful, however, my attempt was rather simplistic, and didn't accurately reflect a full level in Tyrian. However, you can try out the demo and let me know if its going to be of any use to you. PM, or reply here for more details.
|
|
|
Post by Foz on Jan 8, 2007 23:42:51 GMT
I'll have to say no in case it distracts me as much as Tyrian does I have to be very careful about "checking" how Tyrian does something, because when my mind comes back to things, I've just completed 5-6 levels... I'm getting fairly close with the level editor being where I want it to be - the be all and end all of level design - background layers, sprites on each level and each one being able to be coded - whether just a straight down motion - as is the case of 'buildings' or fancy movements, such as a boss. Once I'm happy with the level editor, I'll release it with a duplicate of the the first Tyrian level for others to look at and tinker with. There is only the weapons firing missing after the level building. This of course will require the levels to be built first Once that is done, I'll make my first beta release. After that is then the animations, menus and shop and generally just building up more and more weapons (obviously it is going to need evening out to make some of the more... *useless* weapons actually useful) The editor will need Windows running .net (it uses Windows Forms, and mono's implementation on Linux isn't the most reliable thing in the world - it may or may not work), whereas the game itself will run on .net and mono on both windows and linux.
|
|
|
Post by Gamera on Jan 9, 2007 11:37:07 GMT
You guys are so cool
|
|
|
Post by death on Jan 10, 2007 2:24:53 GMT
you just completely lost the typical admin attitude. ;D
|
|
|
Post by majorcooke on Jan 17, 2008 15:13:20 GMT
okay im slightly bamboozled about those tools and how to use them such as tyrmap.exe... Can anyone get me a starting hand as to how to work this program?
Please?
|
|
|
Post by yuriks on Jan 18, 2008 4:23:50 GMT
Foz: About the level script language: While the levels are scripted with a kind of assembly language, it isn't x86, it's a special language that's interpreted by the game, so fear not, it's perfectly possible to implement the Tyrian system. If you want some info about the level format, I suppose you could try looking in the OpenTyrian source, it's all there... in the form of C source code. =P
|
|