Unresolved Externals :S

Get technical support about the C++ source code and about Lua scripts for maps, entities, GUIs, the console, materials, etc. Also covered are the Cafu libraries and APIs, as well as compiling, linking, and the build system.
Tyson
Posts:12
Joined:2012-10-23, 00:03
Re: Unresolved Externals :S

Post by Tyson » 2012-10-26, 14:45

The texture for what the weapons shoot.
More questions. :P
Where should I start, to make the Main Menu background a video file instead of the usual image? I'm guessing it requires changes source wise, and, if so, whereabouts?
Can animated gif's be shown in the engine, for things like the loading screen?
Is there a way to call GameWorld->BroadcastText via scripting?
Finally, why does CAWE break the mainmenu GUI when you open it?
Just opening it, moving a single element, and saving breaks the whole thing.
User avatar
Carsten
Site Admin
Posts:2170
Joined:2004-08-19, 13:46
Location:Germany
Contact:

Re: Unresolved Externals :S

Post by Carsten » 2012-10-26, 23:37

Tyson wrote:The texture for what the weapons shoot.
If you mean the impact decal, have a look at material "Sprites/Generic1" defined in file Materials/Sprites.cmat.
Where should I start, to make the Main Menu background a video file instead of the usual image? I'm guessing it requires changes source wise, and, if so, whereabouts?
Yes, this is not (yet) built in.
You should start by familiarizing yourself with the Cafu Material System and its implementation.
Can animated gif's be shown in the engine, for things like the loading screen?
Like videos, this is not yet built in.

If you want to have an animated gif with many frames that acts like a small video, the problem should probably be solved by implementing proper video support.

If you only want to toggle a handful of images, you might be able to fake this by displaying a scripted sequence of static images. Our explosions are implemented like this.
Is there a way to call GameWorld->BroadcastText via scripting?
It's not perfect, but for a start:

Code: Select all

Text = "...";
ci.RunCommand("say('" .. Text .. "');");
Finally, why does CAWE break the mainmenu GUI when you open it?
Just opening it, moving a single element, and saving breaks the whole thing.
Thank you very much for reporting this!
I can reproduce this here, have filed a ticket about it, and will look into it asap!
:up:
Best regards,
Carsten
Tyson
Posts:12
Joined:2012-10-23, 00:03

New subject?

Post by Tyson » 2012-10-27, 18:53

I've now got another issue, related to the DeathMatch sample game. Or, more specifically, building a .dll from it.
I've built it successfully with scons, but, inside the folder:
src\Games\DeathMatch\Code\build\win32\vc10\x86\release
There is no DeathMatch.dll file, only a DeathMatch.lib and several .obj files. Am I looking in the wrong directory?

Also, is it possible to get a BSP from GMAX ingame? The only import options for maps are for games themselves, can individual bsp's be imported?
User avatar
Carsten
Site Admin
Posts:2170
Joined:2004-08-19, 13:46
Location:Germany
Contact:

Re: New subject?

Post by Carsten » 2012-10-28, 11:53

Tyson wrote:I've now got another issue, related to the DeathMatch sample game. Or, more specifically, building a .dll from it.
I've built it successfully with scons, but, inside the folder:
src\Games\DeathMatch\Code\build\win32\vc10\x86\release
There is no DeathMatch.dll file, only a DeathMatch.lib and several .obj files. Am I looking in the wrong directory?
No, everything is all right:
In r572 I've begun to link game libraries no longer dynamically, but statically to the Cafu executable.
Also see this note for a few more words about it.

Between r572 and r654 you come off best by modifying the existing game "DeathMatch" to create your own game.

Just yesterday I've committed r655 that is supposed to overcome the remaining related problems: with r655, you should be able to copy or rename DeathMatch at will, and it will compile and link automatically. See the sections about "GameLibs" at the bottom of CompilerSetup.py.tmpl for some details.

However, I have not yet completed a few related tests and not yet updated the related documentation. I'll do all this next week, and would suggest, if you can, to not upgrade your current edition of the source code until then.

I'm sorry that the current situation is a bit chaotic, this is not how I normally manage things. One of the reasons for our switching to Git is to get such backwards-incompatible changes, or anything else that causes inconveniences for users, better organized in the future.

Also see http://www.cafu.de/forum/viewtopic.php?f=6&t=1077 for a related thread.
Also, is it possible to get a BSP from GMAX ingame? The only import options for maps are for games themselves, can individual bsp's be imported?
At this time, no.
I'm no longer as opposed to supporting arbitrary meshes in CaWE as I used to be, but importers for GMAX, Blender, or similar related file formats still need to be written.
Best regards,
Carsten
Tyson
Posts:12
Joined:2012-10-23, 00:03

Re: Unresolved Externals :S

Post by Tyson » 2012-10-29, 01:51

Alright.

Also, how do you make SCONS link to another .lib file? I'm using CURL for a 'daily tips' system, but it won't link without curllib.lib and curllib_static.lib being linked too. I tried to read up on the SConscript file and adding libs to it, but I am totally confused. :(
User avatar
Carsten
Site Admin
Posts:2170
Joined:2004-08-19, 13:46
Location:Germany
Contact:

Re: Unresolved Externals :S

Post by Carsten » 2012-10-31, 14:36

Tyson wrote:Also, how do you make SCONS link to another .lib file? I'm using CURL for a 'daily tips' system, but it won't link without curllib.lib and curllib_static.lib being linked too. I tried to read up on the SConscript file and adding libs to it, but I am totally confused. :(
Generally, to link a library to the main Cafu executable, you have to add a line like

Code: Select all

# Link both curllib.lib and curllib_static.lib to Cafu.exe:
envCafu.Append(LIBS=["curllib", "curllib_static"])
to the SConsript file. See http://trac.cafu.de/browser/cafu/trunk/SConscript#L92 for an existing example, i.e. how the other libraries are linked.

Also, you may want to have a look into the SCons User Guide. It is very well written and easy to read, and explains how SCons builds software very well.
:up:
Best regards,
Carsten
User avatar
Carsten
Site Admin
Posts:2170
Joined:2004-08-19, 13:46
Location:Germany
Contact:

Re: Unresolved Externals :S

Post by Carsten » 2012-11-09, 11:54

Hi Tyson,

fyi, I fixed ticket 124 yesterday. :up:

I'm not sure how you access the source code. At the moment, you can get it: Btw., thanks for editing the Wiki, it's very much appreciated! :wohow:
Best regards,
Carsten
Tyson
Posts:12
Joined:2012-10-23, 00:03

Re: Unresolved Externals :S

Post by Tyson » 2012-11-09, 20:54

Carsten wrote:Hi Tyson,

fyi, I fixed ticket 124 yesterday. :up:
Great. This'll come in handy when I change the main menu. :D
I'm not sure how you access the source code. At the moment, you can get it:
Downloading now :)
Btw., thanks for editing the Wiki, it's very much appreciated! :wohow:
No problem. I'll improve it where possible. :)
Post Reply

Who is online

Users browsing this forum: No registered users and 7 guests