id Tech Forums

id Tech 4 (Doom3/Prey/Q4) => id Tech 4 Mod Coding => Topic started by: Manson on August 07, 2015, 05:26:10 AM

Title: RBDOOM3-BFG GUI system
Post by: Manson on August 07, 2015, 05:26:10 AM
Can someone please explain how GUI system works on BFG edition.

Im intrested in modin main Screen and Menus. When i unpacked resource files there was no .gui files for main menu, only cursor.gui, genericmap.gui and some weapon gui's. So how can i mod the main menu?
Title: Re: RBDOOM3-BFG GUI system
Post by: trebor on August 07, 2015, 10:07:33 AM
You can't at the moment. Replacing is a quite tiresome task and only motorsep did this so far.
The menus are built using Flash and the source flash files where not shipped with the BFG edition. However I already worked on a solution to mimic id Tech's Flash interpreter in Blender.
The .bswf file is a simplified version of the source Flash files but it includes triangles meshes instead of Flash shapes for example.

I already wrote an export bridge using JSON to analyze the data within Blender but it is not finished.
https://www.dropbox.com/s/q11glupsdetx3zb/Screenshot%202015-06-10%2000.44.52.png?dl=0

My plan is to replace Flash with this new JSON based format and to replace Actionscript with Lua.
The menu is almost entirely written in C++ like in Q3A. However the sprite definitions are defined using Flash. Those can be defined easily by Blender.
There is almost zero Actionscript logic behind it. I know it because I wrote a P-Code -> Actionscript reverse enginering tool inside BFG.

I also have a .bswf -> Flash converter in the works but it is also not complete:
https://www.dropbox.com/s/8sdnaejpgig8mxs/Screenshot%202015-06-10%2017.49.19.png?dl=0

I can understand why they replaced the .gui stuff for the main menus. It was a huge mess.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 10:33:54 AM
Apparently Adobe Flash will be phased out soon (unless it's just a rumor) :/

I personally think it would be fine to bring back old GUI system for full screen, but adjust it to work with widescreen resolutions, and pack all graphics into atlases, as it's done with Flash menus right now (automatically, by the engine).

We already fixed GUI Editor and expanded functionality. So it's much easier to build guis with it. It would be nice to add animation support, a la Adobe Flash and improve existing functionality even further.

Title: Re: RBDOOM3-BFG GUI system
Post by: BloodRayne on August 07, 2015, 11:33:59 AM
Quote from: motorsep on August 07, 2015, 10:33:54 AM
Apparently Adobe Flash will be phased out soon (unless it's just a rumor) :/
Not a rumour, Flash is leaky as a 90yo woman. It's a constant security risk and hassle, it's entire design principle is flawed in the way that it eats up CPU and performance. The kernel is so flawed that an entire rewrite is necessary. I can't believe they ever went with Flash as a GUI interface.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 11:48:36 AM
Quote from: BloodRayne on August 07, 2015, 11:33:59 AM
Not a rumour, Flash is leaky as a 90yo woman. It's a constant security risk and hassle, it's entire design principle is flawed in the way that it eats up CPU and performance. The kernel is so flawed that an entire rewrite is necessary. I can't believe they ever went with Flash as a GUI interface.

While it is a security risk for web, it's in no way security risk for game UI :) Scaleform is still around and widely used, so it would be a surprise if Flash would be just dropped. It's the only robust tool on the market for UI design. I haven't seen any software aimed at UI development with capacity close to Flash (especially animation tools).
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 12:09:35 PM
In OpenTechEngine Kortemic implemented Crazy Eddie's GUI to replace flash based GUI, Robert could this blender script be reimplemented with CeGUI? it looks pretty good!
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 12:14:44 PM
Quote from: BielBdeLuna on August 07, 2015, 12:09:35 PM
In OpenTechEngine Kortemic implemented Crazy Eddie's GUI to replace flash based GUI, Robert could this blender script be reimplemented with CeGUI? it looks pretty good!

There is nothing cool about artist-not-friendly tools  ::)

That's was the sole reason to implement Flash in BFG/RAGE/Wolfs and most likely Doom - artist-friendly tools that allow rapid UI development. It's also easy to find Flash UI artist to just start working on UI even before UI is implemented in the code, than train someone to use horrible GUI system from Doom 3.
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 12:19:01 PM
what do you reefer to artist not friendly tools? this script form Robert seems quite friendly isn't it?
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 12:26:24 PM
Quote from: BielBdeLuna on August 07, 2015, 12:19:01 PM
what do you reefer to artist not friendly tools? this script form Robert seems quite friendly isn't it?

Seriously? Artist use WYSIWYG tools, like Adobe Flash. Coding is not artist friendly. It's programmers friendly .
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 12:31:31 PM
but can't we drag and drop in Blender? Motorsep, is this script final? do you know how it works?
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 12:42:21 PM
Quote from: BielBdeLuna on August 07, 2015, 12:31:31 PM
but can't we drag and drop in Blender? Motorsep, is this script final? do you know how it works?

Blender is 3D app. HUD in D3BFG is the simplest of all GUIs. Menus/PDA/dialogs are much more complex and require ActionScript code. I don't k now what's Trebor's ultimate plan is, but as an artist, I sure do not want to fool around with Blender for UI design.

I've worked with Flash, Doom 3 GUI editor, Qt 5 Designer and I can say that Flash is awesome when it comes to making GUIs. Then comes Qt5 Designer and only then, far apart from the leaders comes Doom 3 GUI Editor.

As an artist, I do not want to touch scripting for anything but only making UI elements call functions that call Doom 3 script execution and such. Qt5 actually excels at GUI design as a whole.
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 01:16:59 PM
tell me, without any kind of scripting how would you do any sort of menu? whether you like it or not you need some sort of scripting, also, why would the artists need to touch any sort of scripting, that's work of the programmers.
So if you don't like scripting "as an artist" so be it, it's not meant to be liked by artists, isn't it?

and also, why despise this script?
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 01:25:29 PM
I am failing to understand how you can't see the difference between Flash and that script stuff.

There is clear distinction between having WYSIWYG editor where you draw UI elements, vs coding UI elements in script.

Have you tried making UI for Doom 3 ? It's a bizarre process from artist's perspective. It's basically HTML coding, but worse.

Now with Doom 3 GUI Editor working, it's much better (if the GUI is static) - you draw entire GUI in the editor, and then script interactions.

If your GUI is animated, it becomes pretty horrible again.

Crazy Eddie's GUI looks just like that, minus WYSIWYG part.

I am sure you are aware that there are a way more artists out there trying to make games than programmers. By magnitude. So if you are making your OpenTech engine for indies, and you are not making it artists friendly, good luck finding anyone making games with it.
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 02:41:11 PM
yes I've done idTech4 GUI stuff, I did the pain wheel for doom3 and some stuff with usable entities and their interaction with the cursor

but never an entire fullscreen GUI, I know enough to know it is difficult. and I've also created scripts, if you want WYSIWYG kind of work-flow then you need to start with a solid foundation, and you always start with a manual process to convert it to an automatized process. Blender is great for that last part in order to keep all the process open, and with an already solid UI system which is highly expandable.

with flash don't you need the action script?
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 02:55:13 PM
Quote from: BielBdeLuna on August 07, 2015, 02:41:11 PM
with flash don't you need the action script?

Not to make UI elements move and animate. Also need a way less Actionscript code to do delays and triggering of animations / transition. And less code for buttons.
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 03:06:03 PM
well everything will come in time, at the moment the ceGUI editor is way simple, but keep in mind ceGUI has not even reached version 1.0, so this could change with time, and time is something we have.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 03:15:19 PM
HTML/CSS would have been much better option as it's a standardized interface with good tools available.

I did some digging and there are at least 2 tools to author HTML5 (and SVG) animation:

http://tumult.com/hype/

https://www.animatron.com/tutorial

Sometimes I wonder what do FOSS programmers think when they choose obscure and raw middleware :/
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 03:28:09 PM
there is no door closed, you can implement whatever you feel like necessary. you can have many implementations running side by side if you want. the idea here is choice.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 03:34:45 PM
Quote from: BielBdeLuna on August 07, 2015, 03:28:09 PM
there is no door closed, you can implement whatever you feel like necessary. you can have many implementations running side by side if you want. the idea here is choice.

That's exactly why most of the FOSS projects based on any of ID Tech engine never took off - instead of getting forces together under solid plan, each dev want to have a choice of implementing useless solutions (while it's fun doing personal projects using obscure code, community would want some standardized and accessible end-user solution).

Anyway, it's pointless to argue when it comes to Doom 3 engine GPL programmers.....
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 03:44:50 PM
the dark mod took off.

why is it pointless when there are clearly gpl programmers in doom3 engine?
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 04:00:31 PM
Quote from: BielBdeLuna on August 07, 2015, 03:44:50 PM
the dark mod took off.

why is it pointless when there are clearly gpl programmers in doom3 engine?

TheDarkMod doesn't just shove whatever each individual programmer thinks is "cool" into the engine. Also, saying TheDarkMod took off is too vague. Where did it take off? If they were to put it on Steam, maybe it would be a good measure of gauging if it really takes off or not. Right now there is a small niche that knows about it and plays it. In no way most of PC games know about it, even from hardcore audience.

If you are making some homebrew project, for your own self and your friends, by all means, put whatever you want into the engine. However, you say it's for the greater good and for indies to make games with idTech 4. That implies whatever goes into the engine has to be chosen deliberately. Such middleware / lib / code has to be stable, readable, artist-friendly (if it's for visual component). "Freedom" has nothing to do with it.
Title: Re: RBDOOM3-BFG GUI system
Post by: dingleberry on August 07, 2015, 04:11:04 PM
Motorsep, all joking and trolling each other aside.

What are you doing on these forums?

Maybe you're aware of it, but almost all peoples posts you do the following:

- argue with almost every member about something trivial, being usually counter productive
- Constantly complain about idtech 4 and how it's terrible to work with
- If someone wants to discuss something you immediately grind that topic in to the ground

It's clear people in general on the forums don't enjoy having you here, so why come here? Are you bored? Is your day to day job not inspiring you and you're just frustrated and take out here? (been down that road before and it's tough to get out of that rut).

I am genuinely curious because in most small communities every person is almost always friendly, but not here and it's quite the bummer that it is not.

EDIT: My terrible english, not my main language.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 04:27:59 PM
Oh, hi dingleballs. I am glad to see you too!

Are you a moderator? I didn't think so..

It's been a tradition on Doom3World that a small group of a few fanboys would not let anyone with opposite point of view to voice an opinion. Well, those days are long over. I have been working with ID Tech 4 on a daily basis since 2012. I also worked with Unity and Darkplaces engine. There are people who unaware of what id Tech 4 is in reality, and the fanboys always make it sound like it's a God given gift to indie game developers. Which is simply untrue. So when someone comes up with some idea that doesn't reflect the true state of things, and no one says a thing to present the idea from a different angle, I voice my opinion from my experience in game dev. I am sick and tired of fanboys just hiding facts or misrepresenting them.

On the other note, you one of those remnants of d3w ghost.. You make it sound as if I have no right to discuss anything or worse - can't argue.

I don't have to be friendly to fit it in a small community. As a matter of fact I can't stand back patting. Small community where people are open to new people and stuff, open to a fact based argument, always beat stale community that is fake and based on patting each other on the back, and pushing away people who has different opinion about the subject. I have a feeling you miss that kind of swamp dearly  >:D

If someone comes out an slams me with facts I was not aware of, fine. I'll eat it and move on. That's what life is about, live and learn, and spread the knowledge. Btw, that's how TDM community is. While there are a few folks who love the swamp atmosphere, other guys are quite reasonable. We can arguments and misunderstandings, but we moved on.

As for something trivial, replacing GUI system in an engine is not trivial. And when some folks live under the rock and are unaware of better options, it would be wise to inform them.

I hope you satisfied your curiosity.

P.S. Note that you were the one who led to the off-topic discussion ;)
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 04:28:39 PM
the dark mod did succeed because it created it's own community of active developers and the original intent was met, whether this has brought an enormous benefit  to the original authors is another matter that doesn't contradict the fact that it succeeded.

I wonder why success should be gauged by the amount of pc gamers who play their game, as long as their community is alive and they are ok with it, they have succeeded in their own terms. In any case that's your method to gauge success not theirs, projecting one onto the other might not reveal anything.

nobody said that OTE is being done for the Indies, if Indies want to use it great, if Indies want to contribute on it great, but OTE is being done because the freedom of the developers will. Freedom has everything to do with it. Why despise the intelligence of the OTE developers? or distrust their capacity? and again, the same above, what you say it has to be might not what every one else thinks it has to be.

Also, unless we are pressed to "use" OTE in some, for the time being, unknown project, we have no pressure on implementing anything specific to the engine besides whatever we already want to implement to it, that also has to do with our freedom, nobody is loosing money that doesn't want to loose on that project because nobody has poured any specific money on it. and nobody that we know about besides ourselves has any need for that engine to succeed. Hence we keep at our pace, we are not in competition with anyone.
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 04:30:41 PM
even if you don't like Motorsep views he has all the right of the world to express himself, but at the same time his right also includes his right to be criticised.  ;) Let's keep speaking and not shouting please  8)

and NO, arguing with Motorsep it's always an enjoyment :)
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 04:34:38 PM
Quote from: BielBdeLuna on August 07, 2015, 04:28:39 PM
the dark mod did succeed because it created it's own community of active developers and the original intent was met, whether this has brought an enormous benefit  to the original authors is another matter that doesn't contradict the fact that it succeeded.

I wonder why success should be gauged by the amount of pc gamers who play their game, as long as their community is alive and they are ok with it, they have succeeded in their own terms. In any case that's your method to gauge success not theirs, projecting one onto the other might not reveal anything.

nobody said that OTE is being done for the Indies, if Indies want to use it great, if Indies want to contribute on it great, but OTE is being done because the freedom of the developers will. Freedom has everything to do with it. Why despise the intelligence of the OTE developers? or distrust their capacity? and again, the same above, what you say it has to be might not what every one else thinks it has to be.

Also, unless we are pressed to "use" OTE in some, for the time being, unknown project, we have no pressure on implementing anything specific to the engine besides whatever we already want to implement to it, that also has to do with our freedom, nobody is loosing money that doesn't want to loose on that project because nobody has poured any specific money on it. and nobody that we know about besides ourselves has any need for that engine to succeed. Hence we keep at our pace, we are not in competition with anyone.

And I quote "Engine based on (RB) Doom 3 BFG aiming to allow the creation of standalone games" So, who creates standalone games? Non-indies ? Modders? Publishers? Give me a break!

TDM has developers who don't fly in the clouds. They are grounded in reality and choose to implement stuff that benefits future development. If you notice, they didn't go for anything crazy in the engine. They kept it as is. And they aren't planning on switching to BFG either.

Whatever you have been suggesting so far it totally opposite. It's going from obscurity idTech 4 already is to a deeper obscurity with middleware that is not the best choice, least to say.

But like you said, you can do whatever you want thanks to GPL.

O0
Title: Re: RBDOOM3-BFG GUI system
Post by: dingleberry on August 07, 2015, 04:39:41 PM
Well you didn't really answer my questions at all.

But good luck with this community and talking to the people here like shit, since you think that's OK to do. Working with idtech4 since 2012? Been on it since 2004, but we're talking semantics.

And Friar has no balls what so ever, if he did, you should've been banned.
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 07, 2015, 04:41:57 PM
I keep my position that we are not in competition with anyone so we are going at our own pace, do you think this is a problem?
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 04:46:14 PM
Quote from: dingleberry on August 07, 2015, 04:39:41 PM
Well you didn't really answer my questions at all.

But good luck with this community and talking to the people here like shit, since you think that's OK to do. Working with idtech4 since 2012? Been on it since 2004, but we're talking semantics.

And Friar has no balls what so ever, if he did, you should've been banned.

There is only one reason you didn't get anything out of my write up - language barrier most likely :P

I don't talk to people like shit - you do. Don't need to go too far - in one of the a bit older threads you showed us it all.

You can be with engine since 1999 or whatever, doesn't mean you are proficient with it and know a lot about the inner working. I think I asked to show some of your work, and I don't believe I ever got links.

I've worked with some programmers who had 20+ years of experience. That didn't make them good programmers at all. Like, _at all_. I could navigate Doom 3's code better than they did, and I am not even a programmer.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 04:46:51 PM
Quote from: BielBdeLuna on August 07, 2015, 04:41:57 PM
I keep my position that we are not in competition with anyone so we are going at our own pace, do you think this is a problem?

Nope, not at all :)
Title: Re: RBDOOM3-BFG GUI system
Post by: trebor on August 07, 2015, 05:18:26 PM
As I said:

Quote
I also have a .bswf -> Flash converter in the works but it is also not complete:
https://www.dropbox.com/s/8sdnaejpgig8mxs/Screenshot%202015-06-10%2017.49.19.png?dl=0

Then you could use Flash directly with any Flash decompiler to make mods.
Title: Re: RBDOOM3-BFG GUI system
Post by: caedes on August 07, 2015, 09:13:54 PM
Quote from: motorsep on August 07, 2015, 04:34:38 PM
And I quote "Engine based on (RB) Doom 3 BFG aiming to allow the creation of standalone games" So, who creates standalone games? Non-indies ? Modders? Publishers? Give me a break!
I don't give a flying fuck who uses OTE. We do it for fun. Anyway, I think it's useful for any project that has a capable programmer and wants to create something standalone based on the Doom3 BFG engine (possibly for projects without capable programmers too, if they can live with what's already implemented).

The goal is allowing to create standalone games - and we do that by integrating a GUI-system that can be used without buying deprecated Adobe Software (and which even has a graphical editor (http://cegui.org.uk/wiki/CEED)) and by providing the minimal assets (entity definitions, basic scripts, editor textures and some other basic textures) one need to get started without relying on any proprietary assets from Doom3 (BFG).
If someone doesn't want to use CEGUI that's fine, at least our CEGUI integration shows how to integrate alternative GUI systems. If anyone wants to integrate librocket, for example, our CEGUI code will be very helpful to find out how to do that. Of course to do that you'll still need a halfway competent programmer, but that should not be a big problem for most projects (that haven't pissed off everyone yet).
In fact, I've integrated ImGui for tools and it was very easy by doing pretty much the same things (passing events, rendering at the end of the frame, ...) as for CEGUI.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 07, 2015, 09:23:40 PM
Quote from: caedes on August 07, 2015, 09:13:54 PM
If anyone wants to integrate librocket, for example

But the question is why not to do HTML5 ? Too complicated or some other reason ?
Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on August 08, 2015, 02:54:25 AM
there you have it, you're  questioning the developer capacity when he is exposing his freedom. why? because you don't like his decisions ? why not take another stance instead, and offer your proposal? or even offer your help?
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 08:31:43 AM
Quote from: BielBdeLuna on August 08, 2015, 02:54:25 AM
there you have it, you're  questioning the developer capacity when he is exposing his freedom. why? because you don't like his decisions ? why not take another stance instead, and offer your proposal? or even offer your help?

Did you wake up on a wrong side of the be today?  :o

I am asking because I'd like to know educated opinion about HTML5 GUI integration. No conspiracy here.
Title: Re: RBDOOM3-BFG GUI system
Post by: caedes on August 08, 2015, 08:45:29 AM
I don't really understood the question.
Was it "Why not librocket?" or "Why not HTML5?" (because I think librocket is xhtml with css2 and some html5 and css3 features).

Why not librocket? - I don't like HTML

Why not HTML5 - I don't want a whole webbrowser in the engine :-P
I guess if you have HTML and CSS the next thing people will demand is javascript and you'll find yourself integrating chromium embedded and then people will have funny ideas like "let's have an ingame webbrowser" and suddenly you gotta keep that thing up to date because of security vulnerabilities... (+ having a whole browserengine in the game is really bloated)
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 08:48:21 AM
I see. Thanks for the explanation, caedes.
Title: Re: RBDOOM3-BFG GUI system
Post by: oneofthe8devilz on August 08, 2015, 09:38:08 AM
@Motorsep, for the sake of your own humanity start reflecting the things you post...

This is not about Doom3 or idtech4... for all I know this could be a forum about cup-cakes and you would still be posting the same way you do now and I would still be writing this message to you...

You can't in all seriousness read through your posts and their feedback for the past 3 years and say they were ALL 100% retardness free...

In case you actually can, please seek professional help and I mean this in all honesty and sincere well-meaningful ways as I would really enjoy seeing you become a productive and useful member of this community...

Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 09:55:05 AM
Quote from: oneofthe8devilz on August 08, 2015, 09:38:08 AM
@Motorsep, for the sake of your own humanity start reflecting the things you post...

This is not about Doom3 or idtech4... for all I know this could be a forum about cup-cakes and you would still be posting the same way you do now and I would still be writing this message to you...

You can't in all seriousness read through your posts and their feedback for the past 3 years and say they were ALL 100% retardness free...

In case you actually can, please seek professional help and I mean this in all honesty and sincere well-meaningful ways as I would really enjoy seeing you become a productive and useful member of this community...

Thank you for your concerns, but I am just fine. I recall you are one of the back patters from d3w, and it simply irks you when I don't say "OMG, your mod is so awesome! Good job!" and things like that. I think you just never had arguments over various subjects in real-life. I feel sorry for you.
Title: Re: RBDOOM3-BFG GUI system
Post by: oneofthe8devilz on August 08, 2015, 09:57:26 AM
Quote from: motorsep on August 08, 2015, 09:55:05 AM
Thank you for your concerns, but I am just fine. I recall you are one of the back patters from d3w, and it simply irks you when I don't say "OMG, your mod is so awesome! Good job!" and things like that. I think you just never had arguments over various subjects in real-life. I feel sorry for you.

Denial is the first step to acceptance  ;)
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 10:04:06 AM
Quote from: oneofthe8devilz on August 08, 2015, 09:57:26 AM
Quote from: motorsep on August 08, 2015, 09:55:05 AM
Thank you for your concerns, but I am just fine. I recall you are one of the back patters from d3w, and it simply irks you when I don't say "OMG, your mod is so awesome! Good job!" and things like that. I think you just never had arguments over various subjects in real-life. I feel sorry for you.

Denial is the first step to acceptance  ;)

Are you talking about yourself?
Title: Re: RBDOOM3-BFG GUI system
Post by: oneofthe8devilz on August 08, 2015, 10:24:29 AM
Quote from: motorsep on August 08, 2015, 09:55:05 AM
Are you talking about yourself?

You know, if I would be a psychology student I am sure you would be a very interesting subject to study...

Like maybe you could answer the question if a person that is behaving the way you are, is actually knowing and "aware" about its own abnormality or not...

I read that most people experiencing a psychotic phase are not even aware of their abnormal behavior... maybe it is a similar case with you ?

I myself have witnessed countless of truly skilled D3 community members over the past years addressing your abnormal behavior and directly confronting you with it and yet still you stayed completely unaffected...

Maybe you just have great repression mechanisms or maybe you are just simply learn-resistant...

In any case you are a very interesting case study because I have yet to come across another individual across the internet with similar attributes regarding community communication behaviors.

I wonder if the things I just mentioned make any sense to you but in case not it would strongly support that theory...
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 10:32:54 AM
Quote from: oneofthe8devilz on August 08, 2015, 10:24:29 AM
I myself have witnessed countless of truly skilled D3 community members over the past years addressing your abnormal behavior and directly confronting you with it and yet still you stayed completely

Maybe I don't give a flying fuck about what you think?  ::)

Being truly skilled and not being able to accept criticism toward the antiquated engine and the practices happening on the forums (back patting) have nothing in common. There are a few people like you are on Blender forums, swearing that BGE is UE4 killer, despite numerous people telling them, with facts, that's not true.

I get it, in your eyes idTech 4 is God's gift to the world, which is somehow overlooked by everyone, except the selected few, who happen to dwell here, on this forums. And ID Tech guys can come down here and tell you straight to your face that you are not quite right. You will still ignore what creators of the engine have to say, and you will keep rolling on with it. It's you little outlet for you and you simply can't take when people point our flaws of technology.

Note that if dingleballz and you wouldn't derail thread into personal debate, it would have been much shorter, contained mostly technical info and probably would have been over with caedes replying to my question.
Title: Re: RBDOOM3-BFG GUI system
Post by: oneofthe8devilz on August 08, 2015, 10:39:22 AM
Motorsep, this is not about game engines. This is about you as an individual.

I use many different engines in different projects. Cryengine, UE3, UE4, idtech4, ArmA1, ArmA3. Also I have no reason to be competitive with you as I don't work on commercial projects nor do I develop for the community in first place (but just for myself, family and friends). So I am as neutral as one can be.

So again Motorsep, I am asking you, what is your major malfunction, that makes you act the way you do on these forums here ?
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 10:45:41 AM
Quote from: oneofthe8devilz on August 08, 2015, 10:39:22 AM
Motorsep, this is not about game engines. This is about you as an individual.

What about me? Do you expect me to please you by responding to people posts nicely all the time?

If someone posts some stupid stuff, or they post an opinion that has nothing to do with it's a correct choice or not, but they make it sound like it's the best choice, I am gonna post my opinion about the subject, where it aligns with your views or not.

Quote from: oneofthe8devilz on August 08, 2015, 10:39:22 AM
I use many different engines in different projects. Cryengine, UE3, UE4, idtech4, ArmA1, ArmA3. Also I have no reason to be competitive with you as I don't work on commercial projects nor do I develop for the community in first place (but just for myself, family and friends). So I am as neutral as one can be.

Are you? I think not. Otherwise we wouldn't have this conversation.

Quote from: oneofthe8devilz on August 08, 2015, 10:39:22 AM
So again Motorsep, I am asking you, what is your major malfunction, that makes you act the way you do on these forums here ?

I don't have any malfunctions. You can't even clearly explain why I'm such a bother to you personally.
Title: Re: RBDOOM3-BFG GUI system
Post by: oneofthe8devilz on August 08, 2015, 10:57:48 AM
Quote from: motorsep on August 08, 2015, 10:45:41 AM
I don't have any malfunctions. You can't even clearly explain why I'm such a bother to you personally.

- You constantly talk down to other people acting like you are an idtech4 expert even if those people are way more experienced and more skilled in design, scripting and programming than you.

- You constantly fight any other opinion that differs from yours and are incapable of reflecting and correcting an obviously wrong argument.

- You constantly make annoying English grammar errors sounding like the Far Cry 3 COOP Character "Mikhail" repeating "I have reload !" over and over again.

- You constantly keep fragmenting the forums with comments and useless new thread topics.

- You lack any general communication-skill and manners and don't have the common courtesy to respect the individuals you are responding to.

   
Title: Re: RBDOOM3-BFG GUI system
Post by: dingleberry on August 08, 2015, 11:02:12 AM
Don't bother oneofthe8devilz.

It's clearly our problem, even though you, me and the 3 other people who messaged me agreeing with what I had said yesterday.

He's perfectly normal.

Since there is 0 modding happening here anyway we should either buy the site from Friar since he doesn't do jack shit with it or start a proper site with the intention of building documentation and modern tutorials for modding idtech 4 (not for the purpose of making money but just for fun, and if you want to use that as base to make money so be it).

And that is something I'd be more than willing to do and some people at work who are also idtech modders.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 11:13:03 AM
Quote from: oneofthe8devilz on August 08, 2015, 10:57:48 AM

- You constantly talk down to other people acting like you are an idtech4 expert even if those people are way more experienced and more skilled in design, scripting and programming than you.

- You constantly fight any other opinion that differs from yours and are incapable of reflecting and correcting an obviously wrong argument.

- You constantly make annoying English grammar errors sounding like the Far Cry 3 COOP Character "Mikhail" repeating "I have reload !" over and over again.

- You constantly keep fragmenting the forums with comments and useless new thread topics.

- You lack any general communication-skill and manners and don't have the common courtesy to respect the individuals you are responding to.


As I thought, sounds like you have issues, not me.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 11:16:04 AM
Quote from: dingleberry on August 08, 2015, 11:02:12 AM
Since there is 0 modding happening here anyway we should either buy the site from Friar since he doesn't do jack shit with it or start a proper site with the intention of building documentation and modern tutorials for modding idtech 4 (not for the purpose of making money but just for fun, and if you want to use that as base to make money so be it).

So what are you waiting for? Go buy a domain, and do it. You could have done it since d3w went down (which happened a looooong time ago), but you didn't do it. I haven't seen a single tutorial from your, ever. Nor mods.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 11:20:38 AM
Btw, without oneofthe8devilz and dingleberry this forum would be a better place  8)
Title: Re: RBDOOM3-BFG GUI system
Post by: oneofthe8devilz on August 08, 2015, 11:21:12 AM
Quote from: motorsep on August 08, 2015, 10:45:41 AM

Quote from: oneofthe8devilz on August 08, 2015, 10:39:22 AM
I use many different engines in different projects. Cryengine, UE3, UE4, idtech4, ArmA1, ArmA3. Also I have no reason to be competitive with you as I don't work on commercial projects nor do I develop for the community in first place (but just for myself, family and friends). So I am as neutral as one can be.
Are you? I think not. Otherwise we wouldn't have this conversation.

One of my Unreal Engine Projects:
Video (https://www.youtube.com/watch?v=aX75zYE6m7c)
Video (https://www.youtube.com/watch?v=8GSAcAsJx3I)

One of my Cryengine Projects:
Video (https://www.youtube.com/watch?v=bH5xgYn8BOI)
Video (https://www.youtube.com/watch?v=2H8X6NeaZZY)

One of my ArmA Projects:
Video (https://www.youtube.com/watch?v=krmYWwYkttM)

My ETQW project:
Video (https://www.youtube.com/watch?v=gxL6D2A_nGk)

...again proving you totally clueless and ill-informed.



Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 11:31:06 AM
I was going to say something .. but I am wasting to much of my precious time on two of you..
Title: Re: RBDOOM3-BFG GUI system
Post by: oneofthe8devilz on August 08, 2015, 11:35:36 AM
Quote from: motorsep on August 08, 2015, 11:31:06 AM
I was going to say something .. but I am wasting to much of my precious time on two of you..

At this very moment, it seems like every single one of your prevented posts is a benefit to this thread/forum...
Title: Re: RBDOOM3-BFG GUI system
Post by: dingleberry on August 08, 2015, 12:09:14 PM
Quote from: motorsep on August 08, 2015, 11:16:04 AM
Quote from: dingleberry on August 08, 2015, 11:02:12 AM
Since there is 0 modding happening here anyway we should either buy the site from Friar since he doesn't do jack shit with it or start a proper site with the intention of building documentation and modern tutorials for modding idtech 4 (not for the purpose of making money but just for fun, and if you want to use that as base to make money so be it).

So what are you waiting for? Go buy a domain, and do it. You could have done it since d3w went down (which happened a looooong time ago), but you didn't do it. I haven't seen a single tutorial from your, ever. Nor mods.

You're* the stupid cunt who complains about no tutorials or documentation, why haven't you written some?

You are so demented that you don't even realize how much trouble you cause, that you get banned from peoples git-hubs, you cause issues on other forums (yeah i see treating people like shit all over the place)

But you still think you're OK? You really need to see a psychiatrist
Title: Re: RBDOOM3-BFG GUI system
Post by: dingleberry on August 08, 2015, 12:13:43 PM
Wait.

Have I got this all wrong and motorsep is just some epic king of trolling and we've all just been trolled to hell?

Because I don't think anyone can be this delusional.....
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 12:18:30 PM
Quote from: dingleberry on August 08, 2015, 12:09:14 PM
You're* the stupid cunt who complains about no tutorials or documentation, why haven't you written some?

Good manners! I envy you  ::)

Oh, I will have tutorials and docs, but for my game (and if we make our engine to run with BFG, then it will directly apply to BFG modding)

Quote from: dingleberry on August 08, 2015, 12:09:14 PM
You are so demented that you don't even realize how much trouble you cause, that you get banned from peoples git-hubs, you cause issues on other forums (yeah i see treating people like shit all over the place)

Yes, and I got banned for the same reason - RBDoom 3 BFG doesn't have the optimal and performance oriented shadow mapping, which I pointed out to Trebor (and another developer contacted him proposing a solution, but he rejected). I got banned for exactly the same thing you would love to ban me here - for speaking the truth.

To top it off, there are people posting to trebor's git hub about performance issues and acne issues when using shadow mapping. So I am not the only one! But he can't ban them all, can he? ;)

Quote from: dingleberry on August 08, 2015, 12:09:14 PM
But you still think you're OK? You really need to see a psychiatrist

Damn right, I am OK  >:D
Title: Re: RBDOOM3-BFG GUI system
Post by: dingleberry on August 08, 2015, 12:26:12 PM
You still don't get it.

Bringing up problems with peoples code is not a problem, we do it all the time all over the world.

This is how you do it: Treb your code has garbage shadow mapping - offensive and uneeded hostility

This is how a normal person does it: Treb I noticed some issues with your shadow mapping, see screenshot B, do you think you could fix it? - does EXACTLY the same thing but is more inclined to get help because he's not acting like a cunt :)

And if you still think that is acceptable, then I have nothing more to say and I'll leave you alone because it's obvious you don't care about wanting to actually improve yourself.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on August 08, 2015, 12:38:27 PM
Quote from: dingleberry on August 08, 2015, 12:26:12 PM
This is how you do it: Treb your code has garbage shadow mapping - offensive and uneeded hostility

This is how a normal person does it: Treb I noticed some issues with your shadow mapping, see screenshot B, do you think you could fix it? - does EXACTLY the same thing but is more inclined to get help because he's not acting like a cunt :)

Are you fucking royal family or something? Never been around working class men talking and arguing? Pffff... Grow up, not everyone talks nicely and in smothering tone out in the world.

Does it look like I am being offensive here: https://github.com/RobertBeckebans/RBDOOM-3-BFG/issues/113 ? Not even close.
Title: Re: RBDOOM3-BFG GUI system
Post by: oneofthe8devilz on August 08, 2015, 01:21:12 PM
Quote from: dingleberry on August 08, 2015, 11:02:12 AM
Since there is 0 modding happening here anyway we should either buy the site from Friar since he doesn't do jack shit with it or start a proper site with the intention of building documentation and modern tutorials for modding idtech 4 (not for the purpose of making money but just for fun, and if you want to use that as base to make money so be it).

And that is something I'd be more than willing to do and some people at work who are also idtech modders.

We had similar intentions back then with the http://idtech4.com (http://idtech4.com/) website but RL business and working on custom projects is so time demanding that we did not yet get to add tutorials and educational content.

Maybe after some of the projects have been released... though I currently doubt it...
Title: Re: RBDOOM3-BFG GUI system
Post by: caedes on August 08, 2015, 09:19:33 PM
Quote from: dingleberry on August 08, 2015, 11:02:12 AM
Since there is 0 modding happening here anyway we should (...) start a proper site with the intention of building documentation and modern tutorials for modding idtech 4 (not for the purpose of making money but just for fun, and if you want to use that as base to make money so be it).
if you feel like writing documentation for idtech4: modwiki is back (see link in my signature), contributions are welcome :)

oneofthe8devilz: Your link to modwiki.net on idtech4.com is dead, you may wanna update it.
Title: Re: RBDOOM3-BFG GUI system
Post by: The Happy Friar on August 08, 2015, 11:35:37 PM
Reading this topic reminds me of the fights my kids get in to with each other.

Quote from: dingleberry on August 08, 2015, 11:02:12 AM
Since there is 0 modding happening here anyway we should either buy the site from Friar since he doesn't do jack shit with it or start a proper site with the intention of building documentation and modern tutorials for modding idtech 4 (not for the purpose of making money but just for fun, and if you want to use that as base to make money so be it).

Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on August 20, 2015, 06:16:21 AM
Sorry, guys.

I'm just looking for base information about new GUI system.

Early I work only with old GUI system (it's well documented) and now think about change engine from vanilla Doom3 to BFG.

Can you give me a links for beginning please?
Title: Re: RBDOOM3-BFG GUI system
Post by: VGames on August 20, 2015, 09:48:39 AM
Quote from: The Happy Friar on August 08, 2015, 11:35:37 PM
Reading this topic reminds me of the fights my kids get in to with each other.

Quote from: dingleberry on August 08, 2015, 11:02:12 AM
Since there is 0 modding happening here anyway we should either buy the site from Friar since he doesn't do jack shit with it or start a proper site with the intention of building documentation and modern tutorials for modding idtech 4 (not for the purpose of making money but just for fun, and if you want to use that as base to make money so be it).


       
  • Nobody ever asked me how much I'd sell it for.
  • I'm noone's momma.  My kids learned how to cook w/o tutorials for everything, I expect better from "adults" (I don't know anyone's actual ages here so I'm being general).
  • motorsep, devils, caedes, trebor, bielbdeluna & manson never went down to the level of name calling.  So, just so I do some "jack shit" you can be partially banned for several days.

LOL
http://www.thelastdragontribute.com/wp-content/uploads/2014/03/Whos-The-Master-Shonuff-Julius-Carry-The-Last-Dragon.png
Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on August 24, 2015, 02:46:51 AM
Ok, I look at Adobe Flash and have some questions.

("- Lightsabers? - No, questions.").

https://en.wikipedia.org/wiki/Adobe_Flash (https://en.wikipedia.org/wiki/Adobe_Flash)

1. Have BFG engine a inline Flash Player? What type (version)?
2. Are there some restrictions to use Flash (by version, by compile tools)?
3. Can I use one of third-party tools (see link above) for make .SWF? What is optimal?

Sorry, never work with Flash.

VGames, can you cut/hide your funny picture please? I would be very grateful.

********************************

QuoteProbably in order to speed up development, they are implemented in Adobe Flash. Doom3 BFG runs its own Flash interpreter (/neo/swf/ folder). Again Flash was used in order to speed up development.

http://fabiensanglard.net/doom3_bfg/ (http://fabiensanglard.net/doom3_bfg/)

VGames, thanks!
Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on September 01, 2015, 08:12:14 AM
bool idSWF::LoadSWF( const char * fullpath ) {

if ( header.version > 9 )
                {
                ...
idLib::Warning( "Unsupported version %d", header.version );
                ...
        }


So I think next features is available (not sure about updates):

Quote
Flash 9    June 2006    ActionScript Virtual Machine AVM2, ActionScript 3.
                                       
Flash 9 Update 1    November 2006    (v9.0.28.0, codenamed "Marvin")

                                         Support for fullscreen mode.

Flash 9 Update 3    December 2007    (v9.0.115.0, codenamed "Moviestar")

                                          Support for H.264 video and AAC audio.



And there is a deal with .swf and .bswf (binary).

Not sure but seems like BFG engine can work with both of them (/swf or /generated) and perhaps convert .swf to .bswf.

See also CVAR 'swf_loadBinary'.

********** update ********************

Or perhaps only swf version 7 (ActionScript 2)?

neo/swf/SWF_ScriptFunction.cpp:

// swf 7
case Action_Extends: return "Action_Extends";
case Action_CastOp: return "Action_CastOp";
case Action_ImplementsOp: return "Action_ImplementsOp";
case Action_Throw: return "Action_Throw";
case Action_Try: return "Action_Try";


Title: Re: RBDOOM3-BFG GUI system
Post by: BielBdeLuna on September 01, 2015, 09:35:31 AM
I guess the full screen GUI can be restored as an additional solution
Title: Re: RBDOOM3-BFG GUI system
Post by: Manson on September 01, 2015, 01:51:16 PM
trebor's JSON/Blender solution looks interesting. I actually dont like flash.... its a slow crap.
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on September 01, 2015, 02:11:35 PM
Quote from: Manson on September 01, 2015, 01:51:16 PM
trebor's JSON/Blender solution looks interesting. I actually dont like flash.... its a slow crap.

It's slow on the web, or as in Flash games, but faster in BFG engine. Faster than old GUI that is. Not to mention all the images get atlased when engine authors SWF files.
Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on September 01, 2015, 09:36:49 PM
Unlike old GUIs new flash-based system is really black box.

I'm try to read listing of any native .bswf file and don't see a easy way to do this.

Also I found 'idCommonLocal::StartMainMenu' but there is no procedure with call this.


/*
==============
idCommonLocal::StartMainMenu
==============
*/
void idCommonLocal::StartMenu( bool playIntro ) {
if ( game && game->Shell_IsActive() ) {
return;
}

if ( readDemo ) {
// if we're playing a demo, esc kills it
UnloadMap();
}

if ( game ) {
game->Shell_Show( true );
game->Shell_SyncWithSession();
}

console->Close();

}


How engine launch mainmenu, how call MoveToNewMap from mainmenu - no anwsers at now.

Needs a listing of (as I think) /generated/swf/shell.bswf (.swf, .as, any human-readable source code for new mainmenu).

And a second ground problem it's a understanding a conception of binary resources (.bimage, bswf etc) and     
how to work with them.

Can anybody give a point?

*****************

Other guys find same way for Rage:

http://forum.xentax.com/viewtopic.php?p=90422 (http://forum.xentax.com/viewtopic.php?p=90422)

*****************

Looks like game started via simple console command "map":


/*
========================
idMenuHandler_Shell::StartGame
========================
*/

cmdSystem->AppendCommandText( va( "map %s %d\n", "game/mars_city1", 0 ) );


But who/how call this proc from .swf?

************************

http://wwwimages.adobe.com/content/dam/Adobe/en/devnet/swf/pdf/swf-file-format-spec-v10.pdf (http://wwwimages.adobe.com/content/dam/Adobe/en/devnet/swf/pdf/swf-file-format-spec-v10.pdf) (pdf 1,1 Mb).
Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on September 06, 2015, 10:57:59 PM
Ok, week have passed and the result is still not very impressive.

Since a typical .SWF file uses typical Flash events can be assumed that these events handles by SWF_Events.cpp.

if ( spriteInstance->scriptObject->HasValidProperty( "onRelease" )
|| spriteInstance->scriptObject->HasValidProperty( "onPress" )
|| spriteInstance->scriptObject->HasValidProperty( "onRollOver" )
|| spriteInstance->scriptObject->HasValidProperty( "onRollOut" )
|| spriteInstance->scriptObject->HasValidProperty( "onDrag" )
) {
parentObject = spriteInstance->scriptObject;
}



bool idSWF::HandleEvent( const sysEvent_t * event ) {
if ( !IsLoaded() || !IsActive() || ( !inhibitControl && useInhibtControl ) ) {
return false;
                ...
idSWFScriptObject * hitObject = HitTest( mainspriteInstance, swfRenderState_t(), mouseX, mouseY, NULL );
if ( hitObject != NULL ) {
mouseObject = hitObject;
mouseObject->AddRef();

var = hitObject->Get( "onPress" );
if ( var.IsFunction() ) {
idSWFParmList parms;
parms.Append( event->inputDevice );
var.GetFunction()->Call( hitObject, parms );
parms.Clear();
return true;
}


/*

class idSWFParmList : public idStaticList< idSWFScriptVar, SWF_MAX_PARMS > {
public:
idSWFParmList() {
}
explicit idSWFParmList( const int num_ ) {
SetNum( num_ );
}

void Append( const idSWFScriptVar & other );
void Append( idSWFScriptObject * o );
void Append( idSWFScriptFunction * f );
void Append( const char * s );
void Append( const idStr & s );
void Append( idSWFScriptString * s );
void Append( const float f );
void Append( const int32 i );
void Append( const bool b );
};


So now I think 'var.GetFunction()->Call( hitObject, parms );' looks like first candidate.

******************** update **********************

   
The truth is out there ))

It is necessary to understand the meaning of this expression:

idMenuHandler_Shell * shellMgr = dynamic_cast< idMenuHandler_Shell * >( menuData );


#ifndef __MENUDATA_H__
#define __MENUDATA_H__

enum shellAreas_t {
SHELL_AREA_INVALID = -1,
SHELL_AREA_START,
SHELL_AREA_ROOT,
SHELL_AREA_DEV,
SHELL_AREA_CAMPAIGN,
SHELL_AREA_LOAD,
SHELL_AREA_SAVE,
SHELL_AREA_NEW_GAME,
SHELL_AREA_GAME_OPTIONS,
SHELL_AREA_SYSTEM_OPTIONS,
SHELL_AREA_MULTIPLAYER,
SHELL_AREA_GAME_LOBBY,
SHELL_AREA_STEREOSCOPICS,
SHELL_AREA_PARTY_LOBBY,
SHELL_AREA_SETTINGS,
SHELL_AREA_AUDIO,
SHELL_AREA_VIDEO,
SHELL_AREA_KEYBOARD,
SHELL_AREA_CONTROLS,
SHELL_AREA_CONTROLLER_LAYOUT,
SHELL_AREA_GAMEPAD,
SHELL_AREA_PAUSE,
SHELL_AREA_LEADERBOARDS,
SHELL_AREA_PLAYSTATION,
SHELL_AREA_DIFFICULTY,
SHELL_AREA_RESOLUTION,
SHELL_AREA_MATCH_SETTINGS,
SHELL_AREA_MODE_SELECT,
SHELL_AREA_BROWSER,
SHELL_AREA_CREDITS,
SHELL_NUM_AREAS
};




Title: Re: RBDOOM3-BFG GUI system
Post by: trebor on October 12, 2015, 07:22:30 AM
I uploaded a special branch that allows you to analyse the Flash data that the BFG edition uses: https://github.com/RobertBeckebans/RBDOOM-3-BFG/tree/flash-tools

Compile and run this build and play the game. Each time a .bswf is loaded it will be exported to base/exported/swf/* to JSON, raw images contained in the render atlas and a .swf file that you can open with a Flash decompiler like JPEGXS FFdec

https://www.dropbox.com/s/8sdnaejpgig8mxs/Screenshot%202015-06-10%2017.49.19.png?dl=0

It is work in progress. The flash export is not complete and I don't want to go that route. However the JSON text files will give you a good insight how the Flash files are structured and you will be able to reimport modified JSON files soon so you can even mod this thing and change the icons or brackground shader without dealing with the entire Flash package by Adobe.

I don't have much time to explain all this stuff but I hope that it helps to understand how the Rage/BFG menu code works.
Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on October 12, 2015, 10:15:48 PM
Amazing!

Thanks, Robert (or mr. Beckebans, if you wish)!

:)

P.S. SWF-related topic is there: http://idtechforums.fuzzylogicinc.com/index.php?topic=315.0 (http://idtechforums.fuzzylogicinc.com/index.php?topic=315.0)

*************************

A new WriteSWF() and WriteJSON() looks great. I thought the binarization process is irreversible.
Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on November 25, 2015, 12:01:03 AM
Ok, it is possible to make own shell.swf (main menu GUI) and loaded it (instead of the original shell.bswf) in RBDOOM3 with command line arguments (like a part of mod).

At least I see the background image and sprites.

Now there is a problem with a missing cursor.

There is the code:

SWF_Render.cpp

if ( isMouseInClientArea && ( mouseEnabled && useMouse ) && ( InhibitControl() || ( !InhibitControl() && !useInhibtControl ) ) ) {
...
if ( !hasHitObject ) { //hitObject == NULL ) {
DrawStretchPic( mouse.x, mouse.y, 32.0f, 32.0f, 0, 0, 1, 1, guiCursor_arrow );
} else {
DrawStretchPic( mouse.x, mouse.y, 32.0f, 32.0f, 0, 0, 1, 1, guiCursor_hand );
}
}


This code does not receive control.

As I see 'useMouse'=FALSE.

The following code sets 'useMouse':

SWF_Events.cpp

idSWFScriptVar waitInput = globals->Get( "waitInput" );
if ( waitInput.IsFunction() ) {
useMouse = false;
...
} else {
useMouse = true;
}


I think the problem is in this line:

idSWFScriptVar waitInput = globals->Get( "waitInput" );

But there is only this one reference 'waitInput'.

Entire code is not includes "globals->Set( "waitInput" )" or declares 'waitIntup' as var, func or sprite (movieClip).

Also I can't find 'waitInput' in .bswf and .json (with RBDOOM3-flash-tools).

How to work with 'waitInput'? It's a sprite? SWF var?
Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on November 30, 2015, 09:07:21 PM
If there was the ability to control the base values (e.g. 'state' and 'nextScreen') inside the SWF file this would allow to create any menu without changing the main code (as I think).

It should pay attention to 'native' SWF function (like inhibitControl()).
Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on December 09, 2015, 08:31:13 AM
 8)
Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on January 28, 2016, 10:04:19 PM
Sorry, guys.

I still don't understand - what is problem with fullscreen gui?

I see a "_fullscreen" sprite into shell.bswf and this code into SWF_Render.cpp:

if ( display.spriteInstance->name.Icmp( "_fullScreen" ) == 0 ) {
renderState2.matrix.tx = display.matrix.tx * renderState.matrix.xx;
renderState2.matrix.ty = display.matrix.ty * renderState.matrix.yy;

float xScale = sysWidth / (float)frameWidth;
float yScale = sysHeight / (float)frameHeight;

renderState2.matrix.xx = xScale;
renderState2.matrix.yy = yScale;
}


It's make sense if we have a deal with menu gui/ingame gui/weapon gui?

E.g. main menu - fullscreen, ingame gui (control panel, display) - simple path mesh etc.?
Title: Re: RBDOOM3-BFG GUI system
Post by: bitterman on February 04, 2016, 03:53:04 AM
Are level guis (displays, scanners, cranes, etc.) in D3BFG made in old-style .gui?

They can be create via editGUIs from D3?
Title: Re: RBDOOM3-BFG GUI system
Post by: motorsep on February 04, 2016, 08:10:19 AM
Quote from: bitterman on February 04, 2016, 03:53:04 AM
Are level guis (displays, scanners, cranes, etc.) in D3BFG made in old-style .gui?

They can be create via editGUIs from D3?

Yep.