Lyon
Moderator: Terryn
Lyon
Download & Source: 2012-07-28
Requirements:
- Windows 98 or later
- DirectX version 9 or higher: http://www.microsoft.com/download/en/details.aspx?id=35
- Microsoft .NET framework 2.0 or higher: http://www.microsoft.com/download/en/details.aspx?id=19
Getting a DirectX error and don't have permission to install all the DirectX libraries? I have attached the necessary DLLs, just place them in the application's folder (ONLY if you get these errors!)
Requirements:
- Windows 98 or later
- DirectX version 9 or higher: http://www.microsoft.com/download/en/details.aspx?id=35
- Microsoft .NET framework 2.0 or higher: http://www.microsoft.com/download/en/details.aspx?id=19
Getting a DirectX error and don't have permission to install all the DirectX libraries? I have attached the necessary DLLs, just place them in the application's folder (ONLY if you get these errors!)
- Attachments
-
- MDX DLLs.zip
- (159.06 KiB) Downloaded 1068 times
Last edited by Saxxon on Sun Jul 29, 2012 3:44 am, edited 43 times in total.
- Dr. Dos
- OH YES! USE VINE WHIP! <3
- Posts: 1772
- Joined: Tue Mar 11, 2003 12:00 am
- Location: Washington
At a 10 second glance this is already more developed than Tyger ever was.
Visit the Museum of ZZT
Follow Worlds of ZZT on Twitter
Apologies for the old post you may have just read.
Follow Worlds of ZZT on Twitter
Apologies for the old post you may have just read.
Tyger is more portable though. The problem with applications in .NET is that they require two things: Windows and .NET framework. This really limits the application to run only on one operating system.Dr. Dos wrote:At a 10 second glance this is already more developed than Tyger ever was.
I would love to get this into a portable state, but I really don't know how to code in any other languages that could be used for this game. For that reason, your Tyger project has a leg up on what I've got. What I'd like to do is to get the code finished in Lyon and help you implement it in Tyger.
Bug fixes for build 1.
- Conveyors should work properly now. The problem with the code was that I wasn't storing a temporary tile correctly if all surrounding blocks were pushable.
- Slimes are added.
- If you have WORLD.ZZT and WORLD.COM in the same folder, it will attempt to load font files if they are Font Mania format. The engine itself doesn't impose a height limit on fonts, but they can only be 8 pixels wide.
- When recording demos, extensions will be used properly (so WORLD.ZZT will create WORLD.ZDM). Additionally, all build 0 demos probably won't be compatible with the build 1 demos (but you can certainly try, there is no version or ID marker in the format currently)
- Title screen is now shown. Some games require it anyway. Pressing P will start the game. However, you will not be able to go back to the title screen unless you reload the world.
- Moving off the edge of a board with a lit torch will now properly update the screen.
Hope to have Build 1 ready tomorrow afternoon.
- Conveyors should work properly now. The problem with the code was that I wasn't storing a temporary tile correctly if all surrounding blocks were pushable.
- Slimes are added.
- If you have WORLD.ZZT and WORLD.COM in the same folder, it will attempt to load font files if they are Font Mania format. The engine itself doesn't impose a height limit on fonts, but they can only be 8 pixels wide.
- When recording demos, extensions will be used properly (so WORLD.ZZT will create WORLD.ZDM). Additionally, all build 0 demos probably won't be compatible with the build 1 demos (but you can certainly try, there is no version or ID marker in the format currently)
- Title screen is now shown. Some games require it anyway. Pressing P will start the game. However, you will not be able to go back to the title screen unless you reload the world.
- Moving off the edge of a board with a lit torch will now properly update the screen.
Hope to have Build 1 ready tomorrow afternoon.
- Smilymzx
- I hope she made lotsa spaghetti!
- Posts: 182
- Joined: Sat May 20, 2006 2:58 am
- Location: LocacoLocacoL :LoL!
If using UPAL/ZZT Custom Palette:
You should use a MZX .PAL FILE, Limit 1 per game!
There no converter that will turn 64-color raw PLDs (Whole EGA Palette) to 16-color (Regular 16-color Text Palette), But is possible to create.
If using FONT MANIA/ZZTAE (FM .COM font):
You should use a 8x14 MZX .CHR FILE, Limit 1 per game,
a converter exists to convert FM .COMs to MZX .CHR, but it is no longer availible with source, because it was included in Miwako's dead ZZT2MZX project. so recreating of this COM2CHR utility is possible.
These are actually there from utilities, You can find them in the Database/Archives in Z2/DMZX.
You should use a MZX .PAL FILE, Limit 1 per game!
There no converter that will turn 64-color raw PLDs (Whole EGA Palette) to 16-color (Regular 16-color Text Palette), But is possible to create.
If using FONT MANIA/ZZTAE (FM .COM font):
You should use a 8x14 MZX .CHR FILE, Limit 1 per game,
a converter exists to convert FM .COMs to MZX .CHR, but it is no longer availible with source, because it was included in Miwako's dead ZZT2MZX project. so recreating of this COM2CHR utility is possible.
These are actually there from utilities, You can find them in the Database/Archives in Z2/DMZX.
- Custom fonts (CHR, COM) and palettes (PAL, PLD) are now supported. They must have the same name as the world that is being loaded. If they are found, they are automatically loaded.
- The 'I' key now toggles the I flag. This should simplify inventory based games. If you accidentally press 'I' during a game that doesn't use it, you can simply press 'I' again to turn the flag off.
- The numpad / and * keys will speed up and slow down the game speed, respectively. The scale is not yet the same as ZZT but the timing system needs to be updated anyway. These speed changes are NOT saved in demos (so you can fast-foward through parts of demos if you wish)
Build 1 is ready. Download links on first post.
- The 'I' key now toggles the I flag. This should simplify inventory based games. If you accidentally press 'I' during a game that doesn't use it, you can simply press 'I' again to turn the flag off.
- The numpad / and * keys will speed up and slow down the game speed, respectively. The scale is not yet the same as ZZT but the timing system needs to be updated anyway. These speed changes are NOT saved in demos (so you can fast-foward through parts of demos if you wish)
Build 1 is ready. Download links on first post.
I'm thinking it's a little more complex than that. :) I won't code them in by guessing.Smilymzx wrote:You can modify the Shark's code to work with the SpiderWeb element instead of the Lava/Water element, Make the speed faster, and you have a spider,
A shark in my dead SZZT hack is a ASM hack of the spider, so it is the reverse of what I did, That is what you must do to make a spider!
Edit: the spider code looks like this.
Code: Select all
Private Sub ActSpider(ByVal Index As Integer)
Dim V As Vector
Dim DesiredVector As Vector
Dim VectorSwap As Integer
With Things(Index)
If .P1 <= Random(10) Then
V = Vector.Rnd
Else
V = EvalSeek(.X, .Y)
End If
If Not ActSpiderMove(Index, V) Then
VectorSwap = (Random(2) << 1) - 1
DesiredVector = New Vector(V.Y * VectorSwap, V.X * VectorSwap)
If Not ActSpiderMove(Index, DesiredVector) Then
DesiredVector = New Vector(-V.Y * VectorSwap, -V.X * VectorSwap)
If Not ActSpiderMove(Index, DesiredVector) Then
DesiredVector = New Vector(-V.X, -V.Y)
ActSpiderMove(Index, DesiredVector)
End If
End If
End If
End With
End Sub
Private Function ActSpiderMove(ByVal Index As Integer, ByVal V As Vector) As Boolean
Dim TargetX As Integer
Dim TargetY As Integer
With Things(Index)
TargetX = .X + V.X
TargetY = .Y + V.Y
Select Case ElementAt(TargetX, TargetY)
Case ElementPresets.Player
Attack(Index, TargetX, TargetY)
Case ElementPresets.Web
MoveThing(Index, TargetX, TargetY)
Case Else
Return False
End Select
End With
Return True
End Function
- Smilymzx
- I hope she made lotsa spaghetti!
- Posts: 182
- Joined: Sat May 20, 2006 2:58 am
- Location: LocacoLocacoL :LoL!
That code looks correct to me!,
And Hopefully we will replace ZZT 3.2/4.0 with this as the recommended version we must use, But of course not until it goes to a state that makes it usable!
We might have to keep the DOS Versions, for nostalgic and archival purposes, This should also NOT be considered a clone, It's a well-done remake of (Super)ZZT, You got my approval on that.
Fight, Saxxon! for Great Justice!
EDIT for Saxxon: Try FreeBasic If you want a variant of BASIC that is portable, and it has partial QB45 support, All you need is a Setup Plan and a supported IDE for it, Then Reprogram it!
FreeBasic is for Linux/Windows 64 and 32bit systems, Freebasic should also be portable to other systems such as any newer Unixes. It is under GNU GPL just so you know.
And Hopefully we will replace ZZT 3.2/4.0 with this as the recommended version we must use, But of course not until it goes to a state that makes it usable!
We might have to keep the DOS Versions, for nostalgic and archival purposes, This should also NOT be considered a clone, It's a well-done remake of (Super)ZZT, You got my approval on that.
Fight, Saxxon! for Great Justice!
EDIT for Saxxon: Try FreeBasic If you want a variant of BASIC that is portable, and it has partial QB45 support, All you need is a Setup Plan and a supported IDE for it, Then Reprogram it!
FreeBasic is for Linux/Windows 64 and 32bit systems, Freebasic should also be portable to other systems such as any newer Unixes. It is under GNU GPL just so you know.