Page 4 of 15

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-14, 23:18
by DaMarkov
BallWin wrote:
2019-01-14, 21:05
DaMarkov wrote:
2019-01-14, 14:41
ZED Online so far only works under Windows and I have recently added a player for the cutscenes porting this to Linux has a low priority for me right now.
Can I learn more about the cutscenes player? I'm just writing a player for the files .JV to transcode the original clips of the game in normal avi format. The description of the original format found here https://wiki.multimedia.cx/index.php?title=JV. The rollers necessary for the original campaign.
I downloaded the cutscenes in avi format. I think the download link was posted in this forum. The player is a simple media player using Microsoft's DirectShow.
The information on https://wiki.multimedia.cx/index.php?title=JV about the file format it quite sparse. Is this really enough to be able to read the JV files?
BallWin wrote:
2019-01-14, 21:05
DaMarkov wrote:
2019-01-14, 14:41
B) Excellent idea! Of course, what someone considers a bug another persons sees as a feature. @BallWin should we create something like a Google Docs spreadsheet where we write down what bugs we fixed/things we changed?
Something like: Players can not attack their own building | Fixed in ZED Online commit [...] | Released in version 0.1.1
Then we would have a list of all the changes and as long as every change is tied to a commit id it should be easy for us to transfer these changes in our own projects.
I agree with you. At the moment, when changing the source code of the Zod Engine, I added the //TODO label next to it. Many ides are able to search for that tag and display each of these places. However, the replacement is NULL on null ptr, it had to make more than 500 corrections... such a small change I have not noted. I could give you the password for the Github branch. You could form a Windows branch nearby. Then we will receive the list of changes automatically.
I should have a Github account somewhere. I will follow the project. Hopefully the notification system works.

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-15, 07:35
by APC
Issue about stored manufactured guns - it seems I was wrong and the suspected bug doesn't exist. (I thought they produced the guns elsewhere and were able to place it in different territory).

Ballwin - I hope in the end your Q_Zed Engine will be released also for Windows.

Yesterday I was in repair factory with Heavy Tank when territory was captured. It was before repair countdown started. My damaged Heavytank stuck there and wasn't able to go inside/outside. The repairfactory wasn't useable for for the rest of the game. Maybe some key+left click on your own unit could blow it up. Because there is no way to autodestruct own units.

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-15, 21:42
by BallWin
DaMarkov wrote:
2019-01-14, 23:18
I downloaded the cutscenes in avi format. I think the download link was posted in this forum. The player is a simple media player using Microsoft's DirectShow.
This will only work with Windows. (This is not a criticism. This is a statement of fact.) Do you plan to play video content in a separate independent panel? Or will it be part of the engine?
DaMarkov wrote:
2019-01-14, 23:18
The information on https://wiki.multimedia.cx/index.php?title=JV about the file format it quite sparse. Is this really enough to be able to read the JV files?
At the moment I want to play video using ZodEngine. When using third-party programs and libraries, new dependencies will appear. I'd like to avoid that. Only STL and wxWidgets remain. I'm not familiar with these tools very well... So some difficulties are expected. STL and wxWidgets are only capable of showing images (correct me if I'm wrong). That is, the display of the video stream looks like a sequential display of pictures-frames in the game window. Getting a set of images-frames from a JV file in my opinion is not a very difficult task.
DaMarkov wrote:
2019-01-14, 23:18
I should have a Github account somewhere. I will follow the project. Hopefully the notification system works.
Ok 8)

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-16, 00:00
by DaMarkov
APC wrote:
2019-01-15, 07:35
Yesterday I was in repair factory with Heavy Tank when territory was captured. It was before repair countdown started. My damaged Heavytank stuck there and wasn't able to go inside/outside. The repairfactory wasn't useable for for the rest of the game. Maybe some key+left click on your own unit could blow it up. Because there is no way to autodestruct own units.
So the heavy tank was stuck (unable to move) in front of the repair facility? And this happend in ZOD engine?
BallWin wrote:
2019-01-15, 21:42
DaMarkov wrote:
2019-01-14, 23:18
I downloaded the cutscenes in avi format. I think the download link was posted in this forum. The player is a simple media player using Microsoft's DirectShow.
This will only work with Windows. (This is not a criticism. This is a statement of fact.) Do you plan to play video content in a separate independent panel? Or will it be part of the engine?
Yes, it would only work under Windows. I would love to write a player for the original JV files that then would also work under Linux.
The videos are played back in the same window as the game and the UI.
I still don't understand how the file format works. The explanation at https://wiki.multimedia.cx/index.php?title=JV is very rough in my opinion.
Is the order of the subblocks from top-left to top-right and then to the bottom?
What do they mean by "Complete mask read first (4/16/64 bits)"? How big is the mask?

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-16, 14:01
by APC
DaMarkov wrote:
2019-01-16, 00:00
So the heavy tank was stuck (unable to move) in front of the repair facility? And this happend in ZOD engine?
It happend in ZOD engine on nighsoft server. Heavy tank was damaged to the half. It was driving into the gate of repair facility, but in that moment flag was captured. The countdown of repair wasn't started. The tank was there, I gave it commands to drive outside of the gate, but it was not possible. I recaptured the territory but the tank was always there unable to go inside or outside. My other vehicles were also not able to go inside. (I am not sure if the "repair tool" cursor was displayed during mouse hovering over the building.)

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-16, 16:22
by DaMarkov
APC wrote:
2019-01-16, 14:01
DaMarkov wrote:
2019-01-16, 00:00
So the heavy tank was stuck (unable to move) in front of the repair facility? And this happend in ZOD engine?
It happend in ZOD engine on nighsoft server. Heavy tank was damaged to the half. It was driving into the gate of repair facility, but in that moment flag was captured. The countdown of repair wasn't started. The tank was there, I gave it commands to drive outside of the gate, but it was not possible. I recaptured the territory but the tank was always there unable to go inside or outside. My other vehicles were also not able to go inside. (I am not sure if the "repair tool" cursor was displayed during mouse hovering over the building.)
Interesting ... I mean it's a bit hard to replicate, but what happens intern is: First the tank goes the waypoint in front of the repair facility and then does a "force move" inside the facility (afterwards is stays there, health is updated and a force move is done again).
First of all ZED Online must have the same bug, since I didn't change anything which would cause different behavior.
I guess if the facility changes owner during the "force move" the tank might be in an not well-defined state which causes this.
Another explanation could be the on your screen (client) the tank was outside the facility, but on the server the tank was already inside. Then owner of the facility changed, so your PC got an update packet about this, but rejected it since the tank was not inside the facility yet. This might cause a desynchronization between client&server. I.e. your PC thought the tank is at that location, but on the server side there was not tank at this location. This would explain the behavior you were seeing.

In any case, thanks for the bug report!

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-16, 21:42
by BallWin
DaMarkov wrote:
2019-01-16, 00:00
Yes, it would only work under Windows. I would love to write a player for the original JV files that then would also work under Linux.
The videos are played back in the same window as the game and the UI.
I still don't understand how the file format works. The explanation at https://wiki.multimedia.cx/index.php?title=JV is very rough in my opinion.
Is the order of the subblocks from top-left to top-right and then to the bottom?
What do they mean by "Complete mask read first (4/16/64 bits)"? How big is the mask?
Ok.
I wrote a test to read and play the original JV files. For SDL output. Ffmpeg functions are used for reading and converting.
The test should compile with Windows. The readme file contains a line for compilation.
Please check your work with Windows.
Download sources here https://github.com/BallWin/Qt_ZodEngine ... ad_play_JV
The test is very simple. It is intended for health checks only.

FFMPEG must already be installed on Windows computers. Otherwise I will write a decoding the files of the JV itself (probably in BMP?).
It will be very good if everything is compiled and works. In the same test, you can try files of other formats. Most should work fine.

Image Image

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-17, 04:57
by DaMarkov
BallWin wrote:
2019-01-16, 21:42
DaMarkov wrote:
2019-01-16, 00:00
Yes, it would only work under Windows. I would love to write a player for the original JV files that then would also work under Linux.
The videos are played back in the same window as the game and the UI.
I still don't understand how the file format works. The explanation at https://wiki.multimedia.cx/index.php?title=JV is very rough in my opinion.
Is the order of the subblocks from top-left to top-right and then to the bottom?
What do they mean by "Complete mask read first (4/16/64 bits)"? How big is the mask?
Ok.
I wrote a test to read and play the original JV files. For SDL output. Ffmpeg functions are used for reading and converting.
The test should compile with Windows. The readme file contains a line for compilation.
Please check your work with Windows.
Download sources here https://github.com/BallWin/Qt_ZodEngine ... ad_play_JV
The test is very simple. It is intended for health checks only.

FFMPEG must already be installed on Windows computers. Otherwise I will write a decoding the files of the JV itself (probably in BMP?).
It will be very good if everything is compiled and works. In the same test, you can try files of other formats. Most should work fine.

Image Image
Nice!! So the codec for JV files is already implemented in ffmpeg! Insteading of having the dependency to ffmpeg wouldn't it be better if we have a look at the source code of ffmpeg, find the codec and add it to the zod engine? Great job!!

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-17, 21:19
by BallWin
It will be difficult.
JV video decoder (ffmpeg-libavformat) :
https://github.com/libav/libav/blob/4ce ... at/jvdec.c
https://gitgud.io/january/ffmpeg/blob/m ... at/jvdec.c
JV demuxer (ffmpeg-libavcodec):
https://github.com/libav/libav/blob/4ce ... ec/jvdec.c or
https://gitgud.io/january/ffmpeg/blob/m ... ec/jvdec.c

You cannot take this code and paste it into the Zod Engine. I will try to write my own implementation of JV-to-SDL Overlay.

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-18, 07:58
by DaMarkov
BallWin wrote:
2019-01-17, 21:19
It will be difficult.
JV video decoder (ffmpeg-libavformat) :
https://github.com/libav/libav/blob/4ce ... at/jvdec.c
https://gitgud.io/january/ffmpeg/blob/m ... at/jvdec.c
JV demuxer (ffmpeg-libavcodec):
https://github.com/libav/libav/blob/4ce ... ec/jvdec.c or
https://gitgud.io/january/ffmpeg/blob/m ... ec/jvdec.c

You cannot take this code and paste it into the Zod Engine. I will try to write my own implementation of JV-to-SDL Overlay.
I don't see the problem. The code is well-written. It is actually way more understandable than the "explanation" at https://wiki.multimedia.cx/index.php?title=JV
Maybe I am overlooking something, but especially with the file jvdec.c it should only take about a weekend to read JV files and output them to bitmaps / SDL surfaces / OpenGL textures of whatever.
Whether one puts the code in the Zod engine or not is just a question of structuring the code.

EDIT: One should also not that jvdec.c is under GPL license (as well as Zod engine and ZED Online), so one could really take the code and just write the demuxer oneself.

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-19, 12:46
by BallWin
DaMarkov wrote:
2019-01-18, 07:58
I don't see the problem. The code is well-written. It is actually way more understandable than the "explanation" at https://wiki.multimedia.cx/index.php?title=JV
Maybe I am overlooking something, but especially with the file jvdec.c it should only take about a weekend to read JV files and output them to bitmaps / SDL surfaces / OpenGL textures of whatever.
Whether one puts the code in the Zod engine or not is just a question of structuring the code.

EDIT: One should also not that jvdec.c is under GPL license (as well as Zod engine and ZED Online), so one could really take the code and just write the demuxer oneself.
I'm not good with licenses. Isn't the Zod Engine under the GPL?
This archive zod_gentoo-2011-09-06.tar.xz contains files GPL-3 and LGPL-2.1-rotozoom.
There is an entry in the COPYING file:
"the full engine source code is under GPL-3
see GPL-3 file
SDL_rotozoom.cpp and SDL_rotozoom.h are under LGPL-2.1
see http://www.ferzkopp.net/Software/SDL_rotozoom/ and LGPL-2.1-rotozoom file"

This package is here https://sourceforge.net/projects/zod/fi ... z/download

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-19, 13:02
by DaMarkov
I have just release version 0.1.1 of ZED Online. (Depending on which gateway you use and where you are the patch file should be available via the auto-updater in 1 or 2 hours after this post).

Image

The biggest changes are:
- Fixed a serious connectivity issue when playing online
- Fixed a bug where units where frozen when playing multiple games without restarting the .exe file
- Russian fan-translation is now available (after installing version 0.1.1 use the updater to install the translation pack)
- Hotkeys are now configurable in options menu (see screenshot)
- Mouse sensitivity is now configurable (see screenshot) notice that this also influences the drag scroll speed
- Extended statistics (see screenshot)
- Team colors White and Black replaced by Pink and Brown
- Players can now attack their own buildings (except the fort)
- When conquering the fort of another player, all flags of the player that lost change owner to the conqueror (this does not (!) happen when one eliminates all units)
- After finishing level 20 level 21 to 35 of the expansion pack (Z95) become playable

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-19, 13:43
by DaMarkov
BallWin wrote:
2019-01-19, 12:46
DaMarkov wrote:
2019-01-18, 07:58
I don't see the problem. The code is well-written. It is actually way more understandable than the "explanation" at https://wiki.multimedia.cx/index.php?title=JV
Maybe I am overlooking something, but especially with the file jvdec.c it should only take about a weekend to read JV files and output them to bitmaps / SDL surfaces / OpenGL textures of whatever.
Whether one puts the code in the Zod engine or not is just a question of structuring the code.

EDIT: One should also not that jvdec.c is under GPL license (as well as Zod engine and ZED Online), so one could really take the code and just write the demuxer oneself.
I'm not good with licenses. Isn't the Zod Engine under the GPL?
This archive zod_gentoo-2011-09-06.tar.xz contains files GPL-3 and LGPL-2.1-rotozoom.
There is an entry in the COPYING file:
"the full engine source code is under GPL-3
see GPL-3 file
SDL_rotozoom.cpp and SDL_rotozoom.h are under LGPL-2.1
see http://www.ferzkopp.net/Software/SDL_rotozoom/ and LGPL-2.1-rotozoom file"
Intersting ... GPL and LGPL is compatible so that's not a big issue. However, that means only the part that freaknigh coded is under GPL3 and some parts are under LGPL.
I didn't know about the LGPL license, I would have prefered if the Zod engine would be under LGPL in that case I would switch the license for ZED Online

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-19, 14:08
by BallWin
DaMarkov wrote:
2019-01-19, 13:02
I have just release version 0.1.1 of ZED Online. (Depending on which gateway you use and where you are the patch file should be available via the auto-updater in 1 or 2 hours after this post).
:shake: :shake:
DaMarkov wrote:
2019-01-19, 13:02
Intersting ... GPL and LGPL is compatible so that's not a big issue. However, that means only the part that freaknigh coded is under GPL3 and some parts are under LGPL.
I didn't know about the LGPL license, I would have prefered if the Zod engine would be under LGPL in that case I would switch the license for ZED Online
I didn't know about that either. There's nothing in the file zod_linux-2011-09-06.

Re: ZED Online - a fork of the Zod Engine

Posted: 2019-01-19, 17:28
by DemonRed
DaMarkov wrote:
2019-01-19, 13:02
I have just release version 0.1.1 of ZED Online. (Depending on which gateway you use and where you are the patch file should be available via the auto-updater in 1 or 2 hours after this post).

Image

The biggest changes are:
- Fixed a serious connectivity issue when playing online
- Fixed a bug where units where frozen when playing multiple games without restarting the .exe file
- Russian fan-translation is now available (after installing version 0.1.1 use the updater to install the translation pack)
- Hotkeys are now configurable in options menu (see screenshot)
- Mouse sensitivity is now configurable (see screenshot) notice that this also influences the drag scroll speed
- Extended statistics (see screenshot)
- Team colors White and Black replaced by Pink and Brown
- Players can now attack their own buildings (except the fort)
- When conquering the fort of another player, all flags of the player that lost change owner to the conqueror (this does not (!) happen when one eliminates all units)
- After finishing level 20 level 21 to 35 of the expansion pack (Z95) become playable
Awesome mate! But there's problem with Resolution, like in Zod Engine i can use my native (1366x768) and it works absolutely fine, but i doesnt find anyway to choose resolution in you'r project "Zed Engine". Would be nice if you can add that option, anything else looks fine, but i think you need someone who can make great backgrounds, anyway great job, keep up!
Update1: Probably dont understand why version 0.1.1 but i doesnt see additional options as on you'r screen D:
Image