logo
Main

Forums

Downloads

Unreal-Netiquette

Donate for Oldunreal:
Donate

borderline

Links to our wiki:
Wiki

Walkthrough

Links

Tutorials

Unreal Reference

Usermaps

borderline

Contact us:
Submit News
Page Index Toggle Pages: [1] 2 3 ... 5 Send TopicPrint
Very Hot Topic (More than 25 Replies) 227g patch (Read 16323 times)
Dozey
God Member
*****
Offline


I love cleaning The Sunspire
with my mop.

Posts: 609
Location: Poland
Joined: Aug 12th, 2009
Gender: Male
227g patch
Sep 3rd, 2010 at 7:24pm
Print Post  
Hi.

I need a 227g patch for testing it and use some features included there. I'll be very greatfull for someone who will send it on my e-mail. Wink


*Admin edit: it's SMIRFTSCH not Smirtfsch, damnit* haven't answered yet i think that he's busy.
« Last Edit: Dec 14th, 2010 at 12:10pm by Smirftsch »  
Back to top
WWW  
IP Logged
 
Blu3Haz3
Senior Member
****
Offline


Oldunreal member

Posts: 257
Joined: Apr 30th, 2010
Gender: Male
Re: 227g patch
Reply #1 - Sep 11th, 2010 at 12:49am
Print Post  
I was hoping to get a glimpse of the project my self, after seeing all of these improvements on the forums.  I am psyched, if I was a little more in-tune with Unreal Script I could program for it.  I already have experience on some video games such as ArmA 2, COD, Oblivion... etc.
  
Back to top
 
IP Logged
 
Smirftsch
Forum Administrator
*****
Offline



Posts: 7960
Location: at home
Joined: Apr 30th, 1998
Gender: Male
Re: 227g patch
Reply #2 - Sep 11th, 2010 at 6:04am
Print Post  
sry folks, I was just busy with already found bugs. It's not just that I can chose my testers like "I want it and there you have it", I need to stay in contact with them and need detailed reports, which is a lot of work for the testers. This also eats up a lot of time and makes it impossible for me to take anyone as tester. PM me from time to time plz if you really want to test, with reports etc.
  

Sometimes you have to lose a fight to win the war.
Back to top
WWWICQ  
IP Logged
 
Blu3Haz3
Senior Member
****
Offline


Oldunreal member

Posts: 257
Joined: Apr 30th, 2010
Gender: Male
Re: 227g patch
Reply #3 - Sep 12th, 2010 at 12:05am
Print Post  
Smirftsch wrote on Sep 11th, 2010 at 6:04am:
sry folks, I was just busy with already found bugs. It's not just that I can chose my testers like "I want it and there you have it", I need to stay in contact with them and need detailed reports, which is a lot of work for the testers. This also eats up a lot of time and makes it impossible for me to take anyone as tester. PM me from time to time plz if you really want to test, with reports etc.


Yes, I would be pleased to help test out some things.  I know unreal script to a degree, I might be able to help find specified bugs in certain scripts rather than just pointing them out in-game.  It is all the same for me, anyways.  Do you have MSN, or any messenger I might possibly keep in contact with?  And btw, if you need any textures, or scripts done just ask me.  I can help a little bit if it is needed...

If you do have MSN, add mine... it is "Zplea@hotmail.com".  I will give you updated bug reports on the forums and on msn every weekend if that is frequent enough for you?
  
Back to top
 
IP Logged
 
creavion
Senior Member
****
Offline


Waiting for the final
release (Bankai)!

Posts: 360
Location: SmirtFISH Fanboy
Joined: Oct 12th, 2009
Gender: Male
Re: 227g patch
Reply #4 - Sep 12th, 2010 at 1:45pm
Print Post  
Dozey wrote on Sep 3rd, 2010 at 7:24pm:
Hi.

I need a 227g patch for testing it and use some features included there. I'll be very greatfull for someone who will send it on my e-mail. Wink


Smirtfsch haven't answered yet i think that he's busy.


No offence but I think "testing" of the patch reqieres a certain level of editor and/or engine and/or mapping knowledge.

It seems at a certain point you said something like "How to change this bsp ..."(I dont know when this happened) and an other time I remember you were proud of successfully making a simple bsp construction.

The thing is: If you dont "even" know the basics, then I dont know how you can help through bug reports.

I am aware about that this sounds now a little bit rude, but if you handicap the team through POSSIBLE wrong? reports or anything... this would not help. You dont have to be a ued-nerd, but you are without doubt a beginner.

You have to see, Smirftsch is busy with his job and has heavy health problems, so plz understand the situation and what I am trying to say you.

But afaik you just want the patch for fun, maybe Smirftsch can make an exception in your case. Its his decision.

We are not many testers but we (mostly) know what we are doing...

I can not formulate my post even more polite...
  

UT99.org Community Mappack 2:&&http://www.ut99.org/utr/infopage.html
Back to top
 
IP Logged
 
Dozey
God Member
*****
Offline


I love cleaning The Sunspire
with my mop.

Posts: 609
Location: Poland
Joined: Aug 12th, 2009
Gender: Male
Re: 227g patch
Reply #5 - Sep 12th, 2010 at 5:57pm
Print Post  
no it's ok - maybe i am not a very good script writer ( i am noob in this category) but with mapping something i know. BSP based terrain i have know from the begining of my mapping journey but this what i've created was very corrupted (a lot of bsp holes) and i asked for another tutorial for it. I could use 227g in maps not i uc scripts. Grin
  
Back to top
WWW  
IP Logged
 
Akyra
Full Member
***
Offline


Oldunreal member

Posts: 101
Joined: Dec 13th, 2010
Gender: Male
Re: 227g patch
Reply #6 - Dec 13th, 2010 at 3:42pm
Print Post  
Hi, when will be released 227 grams of beta patch? I look forward to. Will be there in the shadow projector on skripted pawn as the Rune or Star trek?
  
Back to top
 
IP Logged
 
creavion
Senior Member
****
Offline


Waiting for the final
release (Bankai)!

Posts: 360
Location: SmirtFISH Fanboy
Joined: Oct 12th, 2009
Gender: Male
Re: 227g patch
Reply #7 - Dec 13th, 2010 at 4:51pm
Print Post  
227a - f are beta (as Smirf stated, although I think different about that^^)
227g (full) will come very soon. Most likely this will also decide about the fate of UT.
  

UT99.org Community Mappack 2:&&http://www.ut99.org/utr/infopage.html
Back to top
 
IP Logged
 
GreatEmerald
Oldunreal MasterPoster
*
Offline


The Great Emerald

Posts: 5361
Location: Vilnius, Lithuania
Joined: May 21st, 2007
Gender: Male
Re: 227g patch
Reply #8 - Dec 13th, 2010 at 6:23pm
Print Post  
Actually, to be precise, a-e were beta, f is RC1, g is probably going to be RC2 since it opens up the whole RTNP and thus problems are just waiting to arise when it goes public.
  
Back to top
WWW  
IP Logged
 
Zombie
Forum Administrator
The One Who Wanted To Have A Special Title In Forum
*****
Offline


Living Dead

Posts: 323
Joined: May 9th, 2002
Re: 227g patch
Reply #9 - Dec 13th, 2010 at 11:15pm
Print Post  
The 227f subversion is an RC in name only at this point. The differences from f to g are more than what goes on in an RC phase. That technically indicates that the 227 patch development schedule changed course back and was not going to be limited to the feature state of the previous subversion for final release.


-Zombie
  
Back to top
 
IP Logged
 
[]KAOS[]Casey
Ex Member


nedm

Gender: Male
Re: 227g patch
Reply #10 - Dec 14th, 2010 at 1:40am
Print Post  
we want g to be the last one, which is why we're at a "it's done when it's done" stage.. provided no more critical bugs are found in g post release, at least
  
Back to top
 
IP Logged
 
creavion
Senior Member
****
Offline


Waiting for the final
release (Bankai)!

Posts: 360
Location: SmirtFISH Fanboy
Joined: Oct 12th, 2009
Gender: Male
Re: 227g patch
Reply #11 - Dec 14th, 2010 at 8:29am
Print Post  
[]KAOS[]Casey wrote on Dec 14th, 2010 at 1:40am:
we want g to be the last one, ...

I already can tell you.. you better forget about that. It will surely not be the last one, most likely the version with the longest development time but I am sure not the last one. Especially since some things can not be changed atm because of time or "knowledge" reasons. I would not wonder, if "they" get an idea how to "fix" certain issues in the future. I mean, mappers gain knowledge and experience through the time. I am sure this counts for scripters and programmers as well.
  

UT99.org Community Mappack 2:&&http://www.ut99.org/utr/infopage.html
Back to top
 
IP Logged
 
Smirftsch
Forum Administrator
*****
Offline



Posts: 7960
Location: at home
Joined: Apr 30th, 1998
Gender: Male
Re: 227g patch
Reply #12 - Dec 14th, 2010 at 9:23am
Print Post  
Its not that easy. None of you is actually really right- or wrong.
I have to say that the intention to make such a patch was always in my eyes "to make Unreal like it should have been from the beginning".

When I started the major target was purely to fix things- but especially during the development of 227g it turned out that many things were impossible to fix- if not using newer inventions and new features. Many of the additions, if not almost all were implemented in the idea to fix flaws and bugs.
These additions however became often enough reasons for either great appreciation of the patch- or a lot of arguing about if it was right to put them in or not.
We never touched the character or gameplay of the game and still kept almost 100% compatibility to the older versions. An effort Epic was never willing to do, still I get sometimes complains about these new things.

Currently I have to admit that I'm tired and if not for Dots, who became an extraordinary developer in the time we were working on this project, there would have been never a 227g like that- he is like a dictionary of Unreal, with patience to forgive me my still ongoing inability to memorize things due to the long time side effects of the medications I got.

On the other hand, I get now bug reports about "critical" bugs, which are - compared with 225/226 bugs not even worth to be declared as "glitch" anymore in my eyes. I think people forgot already where we started.

Yet we are no commercial big company, we do our best in our free time, without earning any money. We are no high paid developers, but we have to pay our bills as well, so our time is limited- remember that.

To summarize it a bit. If or if not there will be a 227h or even 228 or whatever is not decided yet. It will depend on many things as I tried to explain you above.
If there are any critical bugs in 227g  which the testers missed, there will certainly a 227h patch to fix that, but if there will be other major reworks and additions which would be necessary to fix some of the remaining bugs/problems/glitches the future will show.

I think our primary goal is reached with 227g.
  

Sometimes you have to lose a fight to win the war.
Back to top
WWWICQ  
IP Logged
 
Akyra
Full Member
***
Offline


Oldunreal member

Posts: 101
Joined: Dec 13th, 2010
Gender: Male
Re: 227g patch
Reply #13 - Dec 14th, 2010 at 11:45am
Print Post  
Greetings, my mod will be a patch 227f. I understand that he, that the patch is 227g for a very long time and is just beginning work.

Someone thinks of the shadows to 227 g pawn? I tried Creative Shadows and found it a problem with D3DDrv.dll driver, I think it could be done to repair and build around the engine 220beta patch. 227f I tried the script for the projected shadow, but it works just like Decal not working as well as the projected textured.. Lips Sealed

class PlayerShadow expands Decal
                 Config;

#exec TEXTURE IMPORT NAME=UPlayerShadow FILE=Textures\UPlayerShadow.pcx LODSET=2

enum ESizeType
{
     ST_Normal,                                                // decal will not change size
     ST_Grow,                                                  // decal will grow
     ST_Shrink                                                 // decal will shrink
};

var() config float ShadowScaling;
var vector OldOwnerLocation;
var(UIProjector_Size) ESizeType SizeType;                    // how decal size should be affected by distance
var(UIProjector_Size) bool bDistanceSizing;                  // should decal change it's size with distance
var(UIProjector_Size) float ProjectorScale;                  // base projected texture scale
var(UIProjector_Size) float ProjectorScaleModifier;          // scale modifier (for growing/shrinking while moving up/dn)
var(UIProjector_Size) float MinSize;                         // min decal size (used by bDistanceSizing)
var(UIProjector_Size) float MaxSize;                         // max max size (used by bDistanceSizing)
var(UIProjector_Size) float RandomScaleMin;                  // min decal size (used by bRandomScale)
var(UIProjector_Size) float RandomScaleMax;                  // max max size
var(UIProjector_Size) bool bRandomScale;                     // will make size random

var(UIProjector) ERenderStyle ProjectorRenderStyle;          // projector render style
var(UIProjector) bool bStaticProjector;
/*
   bStaticProjector can make static projector form most of the states (except ContinousUpdate and StaticProjector).
   So if you don't need to update you projector all the time (for instance flashlight decal) please set it to true.
*/
var(UIProjector) float ProjectorRefreshTime;                 // how often projected texture will be refreshed
var(UIProjector) float ProjectionDistance;                   // max Z distance from the bottom
var(UIProjector) texture ProjectorTexture;                   // projected texture
var(UIProjector) vector ProjectionOffset;                    // offset from base location
var(UIProjector) rotator ProjectorRotationModifier;          // additional rotation
var(UIProjector) bool bNoRotation;                           // updates everything except rotation
var(UIProjector) actor TracedActor;                          // acto which rotation/location should projector fallow
var(UIProjector) bool bTraceActor;                           // should track actors location/rotation (if you want to track actors rotation set bStaticProjector to false)
// usses TracedActor
var(UIProjector) int ProjectableSurfaces;                    // count of surfaces on which decalw ill be visible

var(UIProjector_Rotator) bool TraceRotation;                 // will trace rotation
var(UIProjector_Rotator) bool bUpdateYaw;                    // will update yaw
var(UIProjector_Rotator) bool bUpdateRoll;                   // will update roll
var(UIProjector_Rotator) bool bUpdatePitch;                  // will update pitch
var(UIProjector_Rotator) bool bReplaceOldRotation;           // replaces old rotation, with new one
var(UIProjector_Rotator) bool bApplyHitNormal;               // should always be true

var(UIProjector_Flicker) float ActiveTime;                   // how long will remain active
var(UIProjector_Flicker) float InActiveTime;                 // how long will remain inactive
var(UIProjector_Flicker) bool bRandom;                       // should stay active/inactive randomly
var(UIProjector_Flicker) float RandomModifier;               // random modifier
var(UIProjector_Flicker) bool bOn;                           // is on or off - works in states:
/*
                                                                TriggerControl
                                                                  if bon=true, then projector turns on when triggered, and off when untriggered
                                                                  if bon=false, then projector turns off when triggered, and on when untriggered

                                                                TriggerToggle
                                                                  should be on at the beginning

                                                                Flicker
                                                                  should be on at the beginning
*/

var(Advanced) bool bLogWarnings;                             // should log all errors and warnings

var bool bAttached;                                          // not-replicated, client side variable used in state Flicker.

var UIProjectorDecal ProjectorDecal;                         // stores decal (client side)
var globalconfig bool bProjectorEnabled;                     // config variable. Describes if projectors are available

// UnrealRuntime
var() Actor                              ShadowActor;
var() vector                        LightDirection;
var() float                              LightDistance;
var() bool                              RootMotion;
var() bool                              bBlobShadow;
var() bool                              bShadowActive;
var() bool                              ShadowTexture;
var() bool                              DetachProjector;


//function SetToEnd(bool bToDo){ bTimeToEnd=bToDo; }
//=============================================================================
// returns sizing type
//=============================================================================
simulated function int GetSizeType()
{
     if (SizeType == ST_Normal) return 0;
     else if (SizeType == ST_Grow) return 1;
     else return 2;
}

//=============================================================================
// checks main variables
//=============================================================================
simulated function BeginPlay()
{
     if (ProjectorRefreshTime <= 0 || ProjectorTexture == none || ProjectorScale <= 0) Destroy();
     if (bTraceActor && TracedActor == none) Destroy();
}

//=============================================================================
// spawn decal
//=============================================================================
simulated function OnStart(optional bool bUseOld)
{
     local vector HitNormal,HitLocation,ProjStart, ProjEnd;
     local rotator tmprot;

     if (Level.NetMode == NM_DedicatedServer) return;

     if (bTraceActor) ProjStart = TracedActor.Location;
     else ProjStart = Location;

     if (bNoRotation)
     {
           ProjEnd=ProjStart - (vect(0,0,1)*ProjectionDistance);
     }
     else
     {
           if (!bTraceActor) ProjEnd=vector(Rotation)*ProjectionDistance;
           else
           {
                 if (TracedActor != none) ProjEnd=vector(TracedActor.Rotation)*ProjectionDistance>>TracedActor.Rotation;
           }
     }

     if (bTraceActor) tmprot=TracedActor.Rotation;
     else tmprot=Rotation;

     if (Trace(HitLocation, HitNormal, ProjEnd, ProjStart) == none)
     {
           if (bLogWarnings) log(self$": WARNING - can not trace BSP!",'UIProjector');
           Destroy();
     }
     if (!bUseOld)
     {
           ProjectorDecal=Spawn(class'UIProjectorDecal',,,HitLocation+ProjectionOffset,tmpr
ot+ProjectorRotationModifier);
           ProjectorDecal.RemoteRole = ROLE_None;
     }
     ProjectorDecal.Style=ProjectorRenderStyle;
}

//=============================================================================
// re-creates decal
//=============================================================================
simulated function OnRecall()
{
     if (ProjectorDecal != none) return;
     OnStart();
}
//=============================================================================
// destroys decal
//=============================================================================
simulated function OnEnd()
{
     if (Level.NetMode != NM_DedicatedServer)
     {
           if (ProjectorDecal == none) return;
           if (ProjectorDecal != none) ProjectorDecal.Destroy();
           ProjectorDecal=none;
     }
}
//=============================================================================
// Updates decal
//=============================================================================
simulated function OnCall()
{
     if (ProjectorDecal != none)
     {
     }
}

//=============================================================================
// Updates once only
//=============================================================================
simulated state() StaticProjector
{
Begin:
     OnRecall();
     OnCall();
}
//=============================================================================
// Keeps updating
//=============================================================================
simulated state() ContinousUpdate
{
Begin:
     OnRecall();
Loop:
     OnCall();
     Sleep(ProjectorRefreshTime);
     GoTo('Loop');
}
//=============================================================================
// Flickers
//=============================================================================
simulated state() Flicker
{
     simulated function Timer()
     {
           if (bAttached)
           {
                 bAttached=false;
                 if (ProjectorDecal != none) ProjectorDecal.DetachDecal();
                 if (bRandom) SetTimer(InActiveTime+(FRand() * RandomModifier), false);
                 else SetTimer(InActiveTime, false);
           }
           else
           {
                 bAttached=true;
                 if (ProjectorDecal != none);
                 if (bRandom) SetTimer(ActiveTime+(FRand() * RandomModifier), false);
                 else SetTimer(ActiveTime, false);
           }
     }
Begin:
     if ( Level.NetMode == NM_DedicatedServer ) Stop; // If on dedicated server, go to sleep mode.
     OnStart();
     SetTimer(InActiveTime, false);
Loop:
     if (bAttached)
     {
           OnCall();
     }
     Sleep(ProjectorRefreshTime);
     if (!bStaticProjector) GoTo('Loop');
}

// UnrealRuntime
//
//      PostBeginPlay
//

event PostBeginPlay()
{
     Super(Actor).PostBeginPlay();
}

//
//      InitShadow
//

function InitShadow()
{
     local Plane            BoundingSphere;

     if(ShadowActor != None)
           

           if(ShadowTexture)
           {
                 Enable('Tick');
                 UpdateShadow();
           }
           else
                 Log(Name$".InitShadow: Failed to allocate texture");
}

//
//      UpdateShadow
//

function UpdateShadow()
{
     
                 if(RootMotion && ShadowActor.DrawType == DT_Mesh && ShadowActor.Mesh != None)
           

                 SetRotation(Rotator(Normal(-LightDirection)));
      
}

//
//      Tick
//

function AttachToSurface();

function Timer();

simulated event Tick( float Delta )
{
     local Actor HitActor;
     local Vector HitNormal,HitLocation, ShadowStart;

     if ( Owner==None || Owner.bDeleteMe )
     {
           Destroy();
           Return;
     }

     if ( OldOwnerLocation == Owner.Location )
           return;

     OldOwnerLocation = Owner.Location;

     DetachDecal();

     if ( Owner.Style==STY_Translucent || Owner.bHidden || Owner.DrawType==DT_None )
           return;

     ShadowStart = Owner.Location;
     ShadowStart.Z-=(Owner.CollisionHeight-5);
     HitActor = Trace(HitLocation, HitNormal, ShadowStart - vect(0,0,500), ShadowStart, false);

     if ( HitActor == None )
           return;

     DrawScale = Owner.CollisionRadius/35.f*ShadowScaling*(1.f-VSize(ShadowStart-HitLocation)/500
);
     SetLocation(HitLocation+HitNormal);
     SetRotation(rotator(HitNormal));
     AttachDecal(10, vect(1,0,-1));
}

  
Back to top
 
IP Logged
 
Smirftsch
Forum Administrator
*****
Offline



Posts: 7960
Location: at home
Joined: Apr 30th, 1998
Gender: Male
Re: 227g patch
Reply #14 - Dec 14th, 2010 at 12:01pm
Print Post  
227g is short before release. But we have a couple of testers  with access to the pre-releases who try to ensure we covered anything.

Creative was using stencil shadows iirc and the code for that was kinda buggy and is not available to me.

However, we implemented some kind realtime shadows in 227g, but they are not lighting dependent as they are based on a decal/projector system as you already found out. But its improved a lot compared to 227f as it really displays a shadow of the objects and not only some blob.

To make "real" light dependent shadows I think the whole lighting system should be reworked and put into T&L instead using current system which does anything with software calculations in the engine, but that's at least for the moment out of question.
  

Sometimes you have to lose a fight to win the war.
Back to top
WWWICQ  
IP Logged
 
Page Index Toggle Pages: [1] 2 3 ... 5
Send TopicPrint
Bookmarks: del.icio.us Digg Facebook Google Google+ Linked in reddit StumbleUpon Twitter Yahoo