LukasPJ
-
Posts
462 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Articles
Docs
Gallery
Posts posted by LukasPJ
-
-
Sounds like a good idea, I'll see if I can make that change :)
-
Noted, bookmarked for later :)
-
What page is horrible? The wiki page? everyone can edit the wiki pages, feel free to go ahead :) @Bloodknight
-
What do you want in an IDE? A Torsion replacement? Take a look here http://wiki.torque3d.org/introduction:scripting-ides
Polycode seems like it's a game engine, not an extensible IDE framework.. Sure it could be used since it's open source, but you'd have to rip out just about everything.. And then write all the IDE features...
-
@Bloodknight
You can attach a file to your post, so it will never 404 as long as the forums are running. :P
Also, you can edit the top-post but only mods and resource owner has that power. It's always possible to port the resource to the wiki afterwards if you want to make some changes I guess. I think the main point is that the guys who write resources, should have as low a barrier as possible. It should pretty much just be a page where they can write stuff and it magically appear as a resource!
-
You have to admit that you used quite some tricks for this resource, you rebranded existing animations and datablocks, but at least your weird shotgun looks good, even though it is amateurishly modeled.
Where did you get the sound files from?
Duion please stop that tone, it's fine that you don't think it's a good model, I think it's good. If you think something could be improved, feel free to post tips, suggestions or point out specific flaws. No one can use "it is amateurish" for anything.
0la5DBtOVNI
-
Is this PhysX or?
-
This looks great Jason, thanks for sharing! And thanks for sharing the script changes too, I'm sure that'll help out a lot of people, looking to add new weapons :P
Would you mind if I use this as a reference for a new wiki page?
-
Well for that I'd use a DoTImpact, if you know for how long time the rocket is flying, otherwise just schedule a function that creates a ConeImpact every 200ms or something.
-
@Gibby unfortunately, it's a fairly simple class atm so you'd need one tween for each axis the turret needs to rotate on. I might improve this later on :)
This is written by hand so there maybe syntactical issues:
function aimTurret(%turret) { %target = %turret.target; echo("stationTurretTrigger::aimTurret %turret "@%turret@" target "@%target); if(isObject(%target)) { echo("stationTurretTrigger::aimTurret %target valid"); %turretPos = %turret.getPosition(); %tgtPos = %target.getPosition(); // this function returns the rotation '%rot' needed to point the turret at its target %rot = pointToPos(%turretPos, %tgtPos); if(%turret.tween !$= "") { %turret.tween.delete(); %turret.tween = ""; } %turret.tween = new Tween(TurretTween) { Duration = 1; // This is in seconds. Target = %turret; // Any SimObject. ValueName = "rz"; // "r" for rotation, "z" for axis ValueTarget = %rot.z; // should I be placing the destination rot value here? EaseDirection = $Ease::Out; // This is just the stock easing values. EaseType = $Ease::Circular; // Again, this is a stock thing, I didn't implement the $Ease enum. // Dynamics Turret = %turret; //Wooh circular references! }; echo("stationTurretTrigger::aimTurret %tween: "@%turret.tween); %turret.tween.play(); } } function TurretTween::onFinished(%this) { %this.turret.fire-away_fire-away(); } -
@Gibby such that the exhaust of the rocket deals damage?
-
@Gibby that seems it's the same issue as with the Tweening.
Just change Impact.h line 22-23 to this:
virtual void interpolateTick( F32 delta ) {}; virtual void processTick() {}; -
#15 and #22, a lot of them looks good, but those stood the most out to me..
#22 suffers the most from being in Alpha though atm, as you don't have arms on the first person, that might put some people off.
-
@Gibby did you remember to make these changes? They might be a little hard to notice in the post :)
-
Do I need this to make it work?
from ConeImpact:
#include "T3D\fx\ImprovedParticle\IPSCore.h"
I don't think so.. I may have been in a bit of a hurry to get it out there, try deleting that line, it should be okay :P
-
Lukas:
I got this error trying to compile:
16>c:\torque\363_vehiculo\engine\source\console\consoleobject.h(620): error C2259: 'Tween' : cannot instantiate abstract class 16> due to following members: 16> 'void ITickable::interpolateTick(F32)' : is abstract 16> c:\torque\363_vehiculo\engine\source\core\itickable.h(113) : see declaration of 'ITickable::interpolateTick' 16> 'void ITickable::processTick(void)' : is abstract 16> c:\torque\363_vehiculo\engine\source\core\itickable.h(117) : see declaration of 'ITickable::processTick' 16> c:\torque\363_vehiculo\engine\source\console\consoleobject.h(620) : while compiling class template member function 'ConsoleObject *ConcreteClassRep<T>::create(void) const' 16> with 16> [ 16> T=Tween 16> ] 16> c:\torque\363_vehiculo\my projects\vehiculo363\source\t3d\tween.h(61) : see reference to class template instantiation 'ConcreteClassRep<T>' being compiled 16> with 16> [ 16> T=Tween 16> ]
did I need to change consoleObject?
Ohh right.. I may have edited the code a little prior to uploading... It's because I forgot that you have to implement all the ITickable functions. I.e. ProcessTick InterpolateTick and AdvanceTime. Where I only implemented one.. Just create empty implementations for ProcessTick and InterpolateTick.. I'll edit the code :P
-
This is the Impact System from the SpellSystem I created. It's an useful system for, well having an impact on the scene.. Like do something to all enemies in a box, or do something multiple times over a duration. It was created with spells in mind, but can probably be used for other things.
There are 5 available impact classes:
- AOEImpact - Circular impact
- BoxImpact - What it says on the tin
- CubeImpact - Likewise
- ConeImpact - Likewise
- DOTImpact - Happens x times with [y] milliseconds interval between each impact
Examples of use (from my spellsystem examples):
%aoe = new ConeImpact(){ SourceObject = %src; Start = %pos; End = VectorAdd(%pos, VectorScale(%eye, 10)); Radius = 2; TypeMask = $TypeMasks::StaticShapeObjectType | $TypeMasks::StaticTSObjectType; CallBack = "ConeCallback"; }; function ConeImpact::ConeCallback(%this, %src, %tgt) { %projectile = ImpactProjectile; ThrowHomingBezierProjectile(%src,%tgt,%projectile,true,"0 0 12"); }%dotimpact = new DOTImpact(){ TickMS = 100; TickCount = 15; CallBack = "FrostBarrageCB"; sourceObject = %spell.getSource(); // Dynamic variables Target = %spell.getTarget(); }; function DOTImpact::FrostBarrageCB(%this, %src) { %weights = GetRandomVector(-3, 3, -3, 3, 0, 3); ThrowHomingBezierProjectile(%src, %this.Target, FrostShardProjectile, true, %weights); }Make these changes to the SceneContainer, and then download the files in: Impacts.zip and add them to the project.
- AOEImpact - Circular impact
-
I think I need a little more elaboration.. Everything you are proud of goes in Show-off.
Show-off is much like blogs, except you don't have to write text for it.. You can just enjoy boosting your ego :P
Made a fancy fireball`? -> Show-off
Made a cool new AI? -> Show-off
Made a new octopus model? -> Show-off
Need to know whether your fancy fireball needs "awesomeness" flag set to true to be awesome? -> Rendering
Need help getting your AI to work? -> C++ or TorqueScript
Need to know how to import your new octopus model? -> Content
-
The only unpulled terrain changes are 920 but it's not OpenGL ready afaik.. I've only changed terrFeatureHLSL.cpp Not the GLSL one :)
-
So, one of the reasons people want to keep the old persistence layer, is because they want to embed scripts in their .gui files... But some people have pointed out that this is a horrible malpractice that should be stopped with fire and sword.. What is the general opinion on this? I can make it possible to embed scripts in .Taml files but.. Ew..
-
@buckmaster possible fix? Woooh!
@Mud-H Thanks! I really appreciate that you could test that for us! :P We've been waiting for weeks for someone to recreate that issue ;)
-
-
The not-so-obvious answer is something like this: You have an object that is spread across several levels. With TAML you can create an XML visitor to walk the level files and update parameters after changing a single instance. Did it in Three Step Studio. Was glorious.
Could you elaborate on that? I don't quite understand what happened but it sounds intriguing :P
-
Okay here's the thing.. Torque3D already has a persistence layer, it can be found here. So what does TAML do differently? It generalizes that persistence layer. As described in the thread you linked initially, using e.g. XML is MUCH faster than executing a script file. Furthermore, you can now use serialize from/to any file format, which makes it easy to work with 3rd party apps (the main motivation behind TAML for T2D).
Lastly, having the missions in e.g. XML makes it easier for some world designers to understand the scene structure without having to learn TorqueScript, and you can validate an XML file without having to run the engine.
TAML and the existing persistence layer in essence works the same way. Save a SimObject to a file, read a SimObject from a file.

Simple navigation
in Website Feedback
Posted
On the forums site?