Перейти к содержанию

Arcanumalive Project


Crypton

Рекомендуемые сообщения

Опубликовано

Yeah, my mistake, WorldEd is better for research, I'm using that for reseaching sector files right now, but for other stuff, like AI, it will be needed to research arcanum executable :)

Dunno. Be it choice of mine, i'd implement AI from the scratch. It's mostly trivial actually, afaics, heavily depending on a combination of pathfinding + scripts.

 

Also, I know about "sectoring" already, and also I've found what sector filename means :) its actually flags that includes a sector position in world and other stuff.

Thought so. I diffed .secs with minor changes to blackbox-poking. Those 0's and 1's at the last part of .sec are tileblocks, obviously.

 

Anyway, did you received my PM?

Yep, answered already. Nope, i'm not :)

  • 2 недели спустя...
  • Ответов 119
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

Опубликовано

As I said before :) I've found all flags used in arcanum objects, so I'm able to load and edit prototypes (.pro), mobile objects (*.mob) and sector files (.sec).

 

This means that I'm able to make a editor for prototypes :) A nice shiny user friendly editor with GUI, the questions are:

 

-Do people really wants this editor ?

-Isn't too late for this ?

-How many people will need that ?

 

 

:dwarf:

Опубликовано

As I said before :) I've found all flags used in arcanum objects, so I'm able to load and edit prototypes (.pro), mobile objects (*.mob) and sector files (.sec).

Cool. Megacool. That means there's no Arcanum remake showstoppers anymore.

 

This means that I'm able to make a editor for prototypes :)

I'd be willing to help.

Maybe we would be able to completely reimplement WorldEd even.

 

Have a look at my script editor: https://forums.arcanumclub.org/index.php?showtopic=5507

Do you think it would be feasible to integrate our tools?

Опубликовано

Yeah :) By finding that flags, I made a huge progress... also I've found that arcanum is much more complex that I though :) There is many rules in game and many hidden object attributes, that are generated by WorldEd but its not possible to edit them in it :) but who cares, now I know them all...

 

I did not looked at that scripts yet, I dont know its structure but I've already looked at source code of ScriptEd that you sent me a link before :) and I found out that I need to write my own 'Script Loader' because I need to understand its file structure and meaning of that scripts.

 

It will be really helpful when time for developing new formats will come :)

 

About proto editor, it will be nice to see that people really wants that, because I hate wasting time on tools that are not really needed... I regret that many times :P

 

So maybe I should make some thread with pool ?:P

 

PS: Oh, and thanks for your script editor, from screenshots I realized that arcanum scripts are hell-shitty bad designed :D

 

EDIT: I checked a source code of your script editor, and it helped me to understand them much more :) thank you again...

 

EDIT2:

Do you have any ideas for new formats ? like for scripts ? or maps ?:)

I was thinking about writting everything into XML files, and make a compiler for them... so engine will load binary form and user will be able to edit them in text form.

Опубликовано

but who cares, now I know them all...

I'm impressed you cracked those formats so fast.

You da man :)

 

I did not looked at that scripts yet, I dont know its structure but I've already looked at source code of ScriptEd that you sent me a link before :) and I found out that I need to write my own 'Script Loader' because I need to understand its file structure and meaning of that scripts.

ScriptEd source is a mess; i've tried to grok it and gave up. My implementation is clean and i will support it so feel спам to use it.

 

About proto editor, it will be nice to see that people really wants that, because I hate wasting time on tools that are not really needed... I regret that many times :P

In my dreams i see some future editing program for Arcanum, integrating all the features and tools in one comfortable environment. Won't it be nice to have swiss army knife? :)

 

I personally suppose it would be more productive and significant to have basic demo of game engine. Maybe just loading and scrolling a map, drawing scenery, moving PC around etc. QGLWidget, for example, is more then enough to build such an engine. People need faith :)

 

PS: Oh, and thanks for your script editor, from screenshots I realized that arcanum scripts are hell-shitty bad designed :D

"Hell-shitty" is an understatement :)

We can't change Arcanum internals, but at least my editor is way more comfortable than SockMonkey's.

 

Anyway, as i know all the bytecodes now i can implement virtual machine compatible to Troika's. And in the future we could use another scripting language to work alongside SockMonkey's one, gradually converting scripts to this new VM.

 

EDIT&EDIT2:

Thank you for an inspiration. I would abandon my own efforts if not knowing there're fellow maniacs out there.

 

XML is human-unreadable and human-uneditable and unhuman overall. I propose to adopt Lua file format which is specifically developed to be editable and understandable by humans. Lua is small, embeddable, powerful scripting language ideally suited for the task. It's well-embraced by gamedev and its learning curve is nil.

Опубликовано

Yes, your implementations is much more cleaner :) thats why I understood to scripts much more after 5 mins looking at your source codes ;)

 

Hmm, swiss knife for arcanum ? I think that WorldEd is good enough and it will be wasting of time making a new one for "old" Arcanum. It will be much better to just pack all tools to one editor pack :)

But on the other hand, I think that something like swiss knife could be made for this project, with map editor, script editor, object editor and so on :)

 

About LUA, I was thinking about this many times, in other projects too, but I had not time to look at it. Is there is simple example app ?:)

 

We can't change Arcanum internals

 

Well, we can change them, but its not easy...

 

For scripts it will be needed to:

-Add new PE section to Arcanum.exe

-Find original procedure

-Find where is scripts loaded (memory) and whats a format of decoded scripts.

-Write own implementation of script loader, in clean c++, just one single procedure.

-Inject this script loader proc to new PE section.

-Rewrite all calls and jumps that used original script loader to out new loader in new PE section, or edit original loader in way that will call our new loader.

 

Also its possible to do that without adding new PE section, but new script loader should be smaller in compiled size :)

 

 

But who will do that ?:D I'm too lazy to do that... hh

Опубликовано
As I said before :) I've found all flags used in arcanum objects, so I'm able to load and edit prototypes (.pro), mobile objects (*.mob) and sector files (.sec).

 

This means that I'm able to make a editor for prototypes :)

(Unfinished) ProtoEdit + Delphi sources could be usefull. :wink: Despite its name ProtoEdit does not * edit * prototypes f5bf6fc227f4818b84fb5f71293dbde4.gif, it only shows info, like stats, flags, art indexes, attached scripts numbers etc.

И москаль, и хохол — хитрые люди, и хитрость обоих выражается в притворстве: первый любит притворяться дураком, а второй умным. © В.О. Ключевский.

Опубликовано

Very well :) I see that somebody(you?:) already tried to make proto editor, good job :) I wish I knew about this editor a few weeks ago, now its a bit useless for me :( Also there is much more flags that it includes, many of them are invisible in WorldEd.

 

PS: Delphi rulez here :D

Опубликовано

Hmm, swiss knife for arcanum ? I think that WorldEd is good enough and it will be wasting of time making a new one for "old" Arcanum.

Not for the "old". For a new.

 

About LUA, I was thinking about this many times, in other projects too, but I had not time to look at it. Is there is simple example app ?:)

Err, World of Warcraft or S.T.A.L.K.E.R. are simple enough? :)

Lots of info on Lua could be obtained here: http://www.lua.org/docs.html

But you won't need it all, you'll embrace the complete syntax in an hour at max.

 

Well, we can change them, but its not easy...

Gawd, let this rusty junk die peacefully :)

We don't need Arcanum _engine_, it's crap anyway. What we do need is _content_ - art, sound, scripts, dialogs, maps, story, characters.

 

So let's try to implement some features step by step. For example, we can make C++ library for loading maps, then GUI widget for showing that map in a window. This widget could be used in both graphics game engine and editor prototypes. And so on. Nothing fancy, no modern shaders or illumination, no 3D models etc. Fancy will come in it's time.

 

I'm pretty sure we can reimplement all the features needed to build a crossplatform engine capable of playing Arcanum modules.

Опубликовано
So let's try to implement some features step by step. For example, we can make C++ library for loading maps, then GUI widget for showing that map in a window. This widget could be used in both graphics game engine and editor prototypes. And so on. Nothing fancy, no modern shaders or illumination, no 3D models etc. Fancy will come in it's time.

 

Hmm, are you sure that you'll be able to rewrite all stuff from Delphi to C++ ?:) I'm not thinking about rewriting all stuff back to C++ because of making that cross platform.

 

I think that if it will run under Windows and Linux, then its enough :) And yes, Delphi has native support for building apps for linux ;) so it can be easily converted....

 

Also I have a class for map loading already finished, well not completely finished but the most important stuff is already implemented :)

 

PS: This project has started in C++, but nobody offered (serious) help with programming :) so I switched to Delphi, because I'm working pretty fast in that....

Опубликовано

Ah, what a pity i've never found your project earlier...

 

Delphi was fine years ago, but now it's dead 'n rotting. It's still doesn't have decent Unicode support, nor MVC, nor 64 bits, nor Linux (Kylix is even deadlier), nor anything for the matter. Every dog has it's time, every fruit has it's season... Delphi's season is over, no future in it. Keep in mind also that finding supportive C++ programmers is much easier in open-source community.

 

I use Qt library. It's modern library for every major platform including handhelds, it's fast, robust, rich and easy to comprehend. Implementing some basic framework for an engine would be really easy with Qt. QtCreator IDE is a beauty and it's RAD capabilities are a blast.

 

May i have a glance at your code? At least i can estimate the time to convert sources or if it's better to use binary linking.

Опубликовано

Hmm so you are saying that object pascal is dead already ?:) I think that many people will argue with you :) but its okey, I support any opinion...

 

As I said before, when I finish this project, it will be possible to rewrite it completely into different language, comments will be included. At this moment, I think that Delphi is the most suitable for remaking Arcanum engine.

 

Also, I needed a help from somebody who has similar skills as I have, but most important was:

-Knowing Assember, C++

-Knowing Debugger

-Knowing DirectX or OpenGL

-Knowing Arcanum game engine a bit, be a Arcanum fan

-Have a lot of спам time for that

 

From that, you can guess that I did not found anybody like that :)

 

 

About source codes.... it will be released someday, at this moment, it has about 400Kb in size... without comments :) The biggest class is Object Loader, which is far from final but it has over 5000 lines already ;)

 

Anyway, thanks for your offers, I will think about that...

Опубликовано

Hmm so you are saying that object pascal is dead already ?:)

Nope, Object Pascal is ok, it's Delphi who's dead for our goals.

 

You plan to finish engine remake on you own? Valiant effort :)

Just remember: the further you code in Delphi - the harder it'll be to convert.

 

Still feel спам to request any help from me. And don't forget to post new screenshots from time to time, what an inspiration! :)

Опубликовано

Yep, I started this project alone and probably I finish that alone too, till somebody who knows that things I described before will offer a help :)

 

I think that when I finish a most important stuff (map loading with sector precaching, loading mobile objects and prototypes, and other stuff) , I'll release a source codes and we could rewrite that to C++ and develop new formats :) also it will be possible to use OpenGL.

 

So when this time comes, be sure that I'll ask you for help as first :) hh

 

 

PS: I'll update the main post in this thread at least twice a week :) and I'll upload new screenshots if something new will be possible to see at them :P

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
×
×
  • Создать...