Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Smoke39

Pages: 1 [2] 3 4 ... 21
11
Other Games / Re: 3D Realms/ Interceptor/ Slipgate Studios
« on: March 15, 2019, 11:32:32 PM »
They also call it there engine on Ion Maiden

Yet they're headlining "devs of duke nukem".

Where?

They're using Darkplaces engine and the newly released Trenchbroom editor from Kristian Duske which helps simplify some of the Quake map editing. Which is also helpfully left out of there news.

The only reason we know these things is because they told us.  So what exactly is your complaint?

They're also fully open source.  They can literally do anything they want with them as long as they release the source to any changes they make.

They just wanna buy it "BECAUSE ITS THE DUKE DEVS" that's not fair imo.

Or maybe we wanna buy it because it looks good?  This is a really insulting strawman.

If you truly want to see some work from the real creators that's recent, Duke 3D World Tour episode 4. They actually profit from it too.

Ah yes, the people who brought us Duke Nukem Forever.  The people who made it impossible to buy the original, unaltered Duke 3D or its expansions anymore.  The people who shoe-horned a cheap reskin of Duke Nukem into Bulletstorm.  Truly the champions of 3DR's legacy.

12
Turok Dinosaur Hunter Modding/Mapping / Re: Smoke's Modding Guide
« on: March 14, 2019, 03:06:22 AM »
Did some more testing and found some quirks with $script 0.  Made a new level scripts section, and updated kGame::CallDelayedMapScript().  I'm not going out of my way to verbosely spell out all the preprocessor stuff with examples 'n' such since I think it's kind of academic, but I think I've got all the basic info there.

Thanks for the area flags stuff.  Those function issues are pretty big; I'll probably try to take care of them soon.

13
Cool idea.  I'll be interested to see what the extent of bFlash's capabilities are.  Can the directional lighting be affected, or just ambient (white and black colors maybe)?  Can the level's lighting be darkened with negative values?  Can the directional light's direction be changed (maybe with translation)?

Even if you can only add to the level's ambient light, you could theoretically script a level's ambient light by setting it to 0, then spawning different particles to set it depending on where you are in the map.

14
Turok Dinosaur Hunter Modding/Mapping / Re: Smoke's Modding Guide
« on: March 12, 2019, 11:06:46 PM »
I just checked it again, and yes it looks like kSelectionListFloat is exactly the same as kSelectionListInt. :o And int& Select(const bool = false) has a bool parameter.

Thanks for the confirmation.  The bool was added and the return value changed to a reference in 2.0.  Anecdotally, passing true seems to get results slightly closer to the expected values, but heck if I know what it's actually doing.

Some more info on map scripts. $restart remaps to
Code: [Select]
void Game.CallDelayedMapScript(const int scriptID, kActor @instigator, const float delay)
where scriptID is taken from the last $script <id> value used in the script before $restart. instigator is placed in the instigator actor arg and the delay is 0. So it's calling itself and will execute itself on the next script execution cycle (not immediately). You can do this same thing and call CallDelayedMapScript(const kStr &in funcName, kActor @instigator, const float delay) for your custom map functions in order to loop them.

Did some quick testing 'cause I was curious about how $restart would work in non-numbered level scripts, and inside functions called from other level scripts.  The impression I'm getting is that by "last $script used before $restart," you're talking about the actual topography of the file, not the execution order.

So for example if you had something like this:
Code: [Select]
$script 1
{
}

void Blah()
{
$restart;
}

$script 2
{
Blah();
}

and then called Game.CallDelayedMapScript( 2, Player.Actor(), 0 ), you'd get $script 2 -> Blah() -> $script 1

15
Turok Dinosaur Hunter Modding/Mapping / Re: Smoke's Modding Guide
« on: March 12, 2019, 06:10:29 PM »
Are you sure there are float versions of AddItem() and Select() for kSelectionListFloat?  I'm getting warnings about implicit type conversion when I try to pass floats to AddItem(), and when I print the result of Select() I'm not getting any decimal places.  I'm also not seeing float versions of those functions in the executable (though I'm just searching for strings in a text editor).

16
Turok Dinosaur Hunter Modding/Mapping / Re: Smoke's Modding Guide
« on: March 11, 2019, 04:34:55 AM »
I know I can make new actors with custom functionality.  I was trying to avoid actor type ID collisions with Turok+, especially if I reorganize it in the future.  I guess that's kinda silly, considering there are over 4 billion possible actor type IDs, which leaves plenty of room for massive buffers between ranges of values.  I'll probably try to be smarter with my future maps. :b

17
Turok Dinosaur Hunter Modding/Mapping / Re: Smoke's Modding Guide
« on: March 09, 2019, 04:54:25 PM »
Okay, I think I understand.  I think with Cliffside Outpost I was trying to mess with movers, which aren't shared, so that would explain it.

So to answer my own question, if you wanted to get a handle to the dummy actor's script object, it'd have to be declared shared.  But if it's shared, then it wouldn't be able to interact with any non-shared entities.  So you use InteractActorsAtPosition() to interact with non-shared entities in the game module from the level module.

This may be naiive, but then why not just redeclare everything shared?  You wouldn't be able to access global variables, but those could be changed to member variables in a shared class.

18
Turok Dinosaur Hunter Modding/Mapping / Re: Smoke's Modding Guide
« on: March 09, 2019, 03:47:09 AM »
Shit, you can actually get an actor's script object from a level script?  I tried doing that while making Cliffside Outpost, and as I recall I was getting cast errors, so I thought the game and level script contexts were just so distinct that they each had their own distinct copies of classes or something.  Just did a quick test with a QuakeSource from a level script, though, and I was able to call SetupShake() and mess with its member variables, so apparently I was doing something wrong before.  Really good to know that's possible after all.

Given that, I'm not sure what the purpose of using InteractActorsAtPosition() is?  Why not just get a handle to the dummy actor's script object and call the function directly?

Thanks for the notes.  I'll parse through them eventually, but just skimming through them I'm noting some nice little nuggets. :)

19
Turok Dinosaur Hunter Modding/Mapping / Re: Smoke's Modding Guide
« on: March 08, 2019, 03:16:36 AM »
Clearing out a backlog of stuff I accumulated while working on my first map:

Figured out which params are which with kActor::SpawnParams().

The levels section has been massively expanded.  In addition to a bunch of handy reference info, of particular note are a couple of quirks with triggers:
1. enemy Target TID can only trigger other actors on death, not level scripts
2. event sectors can only trigger level scripts if there are no actors with a matching TID

20
Other Games / Re: 3D Realms/ Interceptor/ Slipgate Studios
« on: March 07, 2019, 10:58:58 PM »
3DR just announced another new FPS, this time built on the Quake 1 engine.

http://www.wrath.game/


Pages: 1 [2] 3 4 ... 21
SimplePortal 2.3.6 © 2008-2014, SimplePortal