Forums
Games
Cyberpunk 2077 Thronebreaker: The Witcher Tales GWENT®: The Witcher Card Game The Witcher 3: Wild Hunt The Witcher 2: Assassins of Kings The Witcher The Witcher Adventure Game
Jobs Store Support Log in Register
Forums - CD PROJEKT RED
Menu
Forums - CD PROJEKT RED
  • Hot Topics
  • NEWS
  • GENERAL
    THE WITCHER ADVENTURE GAME
  • STORY
    THE WITCHER THE WITCHER 2 THE WITCHER 3 THE WITCHER TALES
  • GAMEPLAY
    THE WITCHER THE WITCHER 2 THE WITCHER 3 MODS (THE WITCHER) MODS (THE WITCHER 2) MODS (THE WITCHER 3)
  • TECHNICAL
    THE WITCHER THE WITCHER 2 (PC) THE WITCHER 2 (XBOX) THE WITCHER 3 (PC) THE WITCHER 3 (PLAYSTATION) THE WITCHER 3 (XBOX) THE WITCHER 3 (SWITCH)
  • COMMUNITY
    FAN ART (THE WITCHER UNIVERSE) FAN ART (CYBERPUNK UNIVERSE) OTHER GAMES
  • RED Tracker
    The Witcher Series Cyberpunk GWENT
THE WITCHER
THE WITCHER 2
THE WITCHER 3
MODS (THE WITCHER)
MODS (THE WITCHER 2)
MODS (THE WITCHER 3)
Menu

Register

[Announce] HARDCORE Graphics Options Menu MOD

+
Prev
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
Next
First Prev 2 of 6

Go to page

Next Last
K

KNGRSM

Rookie
#21
Sep 21, 2015
I'm ignoring you, what? Sorry, you never asked me anything?

Anyway, if you want to change them on-the-fly... here's how I did it, probably not how you would like it, but you press a button and it changes to next environment definition in the array:

Code:
class ChangeEnvironmentDefinition {

private var environmentDefinitionIndex : Int32;
private var envID : Int32;
private var environmentDefinitions : array<String>;


private var isActive : bool;


public function Init() {
    
        isActive = false;
    
        environmentDefinitionIndex = 0;
                        
        GetKeyBinding();
    
        fillTheArray();    
}


public function GetKeyBinding() {
    
        theInput.RegisterListener( this, 'OnPressButton', 'ChangeEnvironmentButton' );


    }






public function fillTheArray() { 
    
        environmentDefinitions.PushBack("environment\definitions\cutscenes_definition\cutscen_definition_global.env");
        environmentDefinitions.PushBack("environment\definitions\env_skellige\env_pbr_skellige_v7_tm_fog_sky_b_tm_exp.env");
    }




event OnPressButton (action : SInputAction) {
    
        if(IsPressed (action)) {
                
            OnChangeEnvironmentDefinition();
                            
        } 
        
    }




event OnChangeEnvironmentDefinition () {
                        
        if (!isActive) {
        
        OnNextEnvironmentDefinition();
        
        } else if (isActive) {
        
        OnDeactivateEnvironmentDefinition();
        
        }
        
    }


event  OnNextEnvironmentDefinition() {
    
        environmentDefinitionIndex += 1;
        environmentDefinitionIndex = environmentDefinitionIndex % environmentDefinitions.Size();
                
        UpdateEnvironment();
        
        isActive = true;
    }






event OnDeactivateEnvironmentDefinition() {
        
        DeactivateEnvironment(envID, environmentDefinitionIndex);


        isActive = false;
    
    }


public function UpdateEnvironment() : Int32 {
    
        var environment : CEnvironmentDefinition;
            
        environment = ( CEnvironmentDefinition )LoadResource( environmentDefinitions[ environmentDefinitionIndex ], true );
                
        if ( environment )
        
        {
                    
        envID =    ActivateEnvironmentDefinition(environment, 1000, 1.0, 1.000000);
            
        theGame.SetEnvironmentID(envID);
                                    
        }
        
        return envID;
    }
}
edit: the fuck is going on with the code formatting, looked way better when I previewed the post...

whatever

pastebin link


of course you need to instantiate this script in another script, like playerWitcher.ws using OnSpawn() or something... because, CDPR decided we have to use existing scripts in order to load custom code, which sucks.

or just add another exec function LoadKNGScript() { instantiate class here, call function Init() } to load the script through console.

also, this could probably be done way better, maybe even through custom menu entries, but whatever I'm done with Witcher 3's ghetto modding kit.
 
Last edited: Sep 21, 2015
  • RED Point
Reactions: web-head91
M

marvelmaster

Forum veteran
#22
Sep 21, 2015
KNGRSM said:
I'm ignoring you, what? Sorry, you never asked me anything?

Anyway, if you want to change them on-the-fly... here's how I did it, probably not how you would like it, but you press a button and it changes to next environment definition in the array:

Code:
class ChangeEnvironmentDefinition {

private var environmentDefinitionIndex : Int32;
private var envID : Int32;
private var environmentDefinitions : array<String>;


private var isActive : bool;


public function Init() {
    
        isActive = false;
    
        environmentDefinitionIndex = 0;
                        
        GetKeyBinding();
    
        fillTheArray();    
}


public function GetKeyBinding() {
    
        theInput.RegisterListener( this, 'OnPressButton', 'ChangeEnvironmentButton' );


    }






public function fillTheArray() { 
    
        environmentDefinitions.PushBack("environment\definitions\cutscenes_definition\cutscen_definition_global.env");
        environmentDefinitions.PushBack("environment\definitions\env_skellige\env_pbr_skellige_v7_tm_fog_sky_b_tm_exp.env");
    }




event OnPressButton (action : SInputAction) {
    
        if(IsPressed (action)) {
                
            OnChangeEnvironmentDefinition();
                            
        } 
        
    }




event OnChangeEnvironmentDefinition () {
                        
        if (!isActive) {
        
        OnNextEnvironmentDefinition();
        
        } else if (isActive) {
        
        OnDeactivateEnvironmentDefinition();
        
        }
        
    }


event  OnNextEnvironmentDefinition() {
    
        environmentDefinitionIndex += 1;
        environmentDefinitionIndex = environmentDefinitionIndex % environmentDefinitions.Size();
                
        UpdateEnvironment();
        
        isActive = true;
    }






event OnDeactivateEnvironmentDefinition() {
        
        DeactivateEnvironment(envID, environmentDefinitionIndex);


        isActive = false;
    
    }


public function UpdateEnvironment() : Int32 {
    
        var environment : CEnvironmentDefinition;
            
        environment = ( CEnvironmentDefinition )LoadResource( environmentDefinitions[ environmentDefinitionIndex ], true );
                
        if ( environment )
        
        {
                    
        envID =    ActivateEnvironmentDefinition(environment, 1000, 1.0, 1.000000);
            
        theGame.SetEnvironmentID(envID);
                                    
        }
        
        return envID;
    }
}
edit: the fuck is going on with the code formatting, looked way better when I previewed the post...

whatever

pastebin link


of course you need to instantiate this script in another script, like playerWitcher.ws using OnSpawn() or something... because, CDPR decided we have to use existing scripts in order to load custom code, which sucks.

or just add another exec function LoadKNGScript() { instantiate class here, call function Init() } to load the script through console.

also, this could probably be done way better, maybe even through custom menu entries, but whatever I'm done with Witcher 3's ghetto modding kit.
Click to expand...
Thx for the script.

Was no offense KNRGSM I sent a pm to you on 19. of septemer :eek:..

However i can understand that modding rly suggs with the tools we got...but anyways look what you and us community achieved inspite of this modkiddage
 
  • RED Point
Reactions: Septerra_Core

Guest 2364765

Guest
#23
Sep 21, 2015
KNGRSM said:
but whatever I'm done with Witcher 3's ghetto modding kit.
Click to expand...
RIP

I guess that most of the potentially promising and capable modders will soon do the same.
Man, you could tell that CDPR dropped the ball with RedKit and Witcher 2.

But this is entirely new level of dropping the ball.
 
  • RED Point
Reactions: IrregularJohn, Septerra_Core, Mezziaz and 2 others
M

marvelmaster

Forum veteran
#24
Sep 21, 2015
skacikpl said:
RIP

I guess that most of the potentially promising and capable modders will soon do the same.
Man, you could tell that CDPR dropped the ball with RedKit and Witcher 2.

But this is entirely new level of dropping the ball.
Click to expand...
I am soo sad...the we might never get proper modding tools because w3 has the most promising graphics, open world and tech I ever saw.
CDPR did a good job with the game...but mods are for improving the game to make it like perfect...but without proper tools its very demotivating
 
  • RED Point
Reactions: Zanderat, KNGRSM and web-head91
K

KNGRSM

Rookie
#25
Sep 21, 2015
marvelmaster said:
I am soo sad...the we might never get proper modding tools because w3 has the most promising graphics, open world and tech I ever saw.
CDPR did a good job with the game...but mods are for improving the game to make it like perfect...but without proper tools its very demotivating
Click to expand...
I still have some hope that they will eventually give us some proper tools when the expansion packs have been released.

At least have them update the current modding kit and optimize mod implementation so you can actually have some decent compatibility.

for starters, give us some documentation, maybe finally explain to us why we can't use timer functions in custom classes even though we extend to another class that has native timer functions.

they do that in so many classes and it works, but it just doesn't work for custom classes that we create? it even compiles without error. but it doesn't call the custom timer function. wtf?

maybe allow us to edit the swf files so we can add custom menu variables to create our own menus? I mean, at least that so that we can get rid of long-ass console commands and use a proper gui for our mods.
 
Last edited: Sep 21, 2015
  • RED Point
Reactions: Nuggit and web-head91
Garrison72

Garrison72

Mentor
#26
Sep 21, 2015
KNGRSM said:
but whatever I'm done with Witcher 3's ghetto modding kit.
Click to expand...

 
  • RED Point
Reactions: web-head91 and KNGRSM
M

marvelmaster

Forum veteran
#27
Sep 21, 2015
KNGRSM said:
I still have some hope that they will eventually give us some proper tools when the expansion packs have been released.

At least have them update the current modding kit and optimize mod implementation so you can actually have some decent compatibility.

for starters, give us some documentation, maybe finally explain to us why we can't use timer functions in custom classes even though we extend to another class that has native timer functions.

they do that in so many classes and it works, but it just doesn't work for custom classes that we create? it even compiles without error. but it doesn't call the custom timer function. wtf?

maybe allow us to edit the swf files so we can add custom menu variables to create our own menus? I mean, at least that so that we can get rid of long-ass console commands and use a proper gui for our mods.
Click to expand...
Hey you can use https://www.free-decompiler.com/flash/
for reading whats in them but dont know if editing work but i have no idea what all the code inside these files mean^^
At least there is a Witcher3 Section in the files where the relevant options are located i guess...
So you are the coding guru so you might be able to find it out...
Btw way you can save as swf i dont know if we can save as redswf
 
  • RED Point
Reactions: web-head91
M

Mezziaz

Rookie
#28
Sep 21, 2015
KNGRSM said:
but whatever I'm done with Witcher 3's ghetto modding kit.
Click to expand...
B-but.... the Grim/Dark Environment Mod? :cry:
 
C

CAPA14

Senior user
#29
Sep 21, 2015
Mezziaz said:
B-but.... the Grim/Dark Environment Mod?
Click to expand...
Maybe Essenthy got the torch?
 
M

marvelmaster

Forum veteran
#30
Sep 22, 2015
StartPost updated and small Tweaking case possibilities below :D (grass 600 meters? appears to be max)

So there a multiple possibilties of description layout... i put them in multiple lines...but havent yet decided wheather to not use them or not or to use which of them.





 
  • RED Point
Reactions: Holgar82 and Mezziaz
K

KNGRSM

Rookie
#31
Sep 22, 2015
marvelmaster said:
StartPost updated and small Tweaking case possibilities below :D (grass 600 meters? appears to be max)

So there a multiple possibilties of description layout... i put them in multiple lines...but havent yet decided wheather to not use them or not or to use which of them.





Click to expand...
great!

may I ask how you added or created the new main menu entries ? you know PANEL_SHADOWS, PANEL_WATER etc.?
 
P

Phinnway

Rookie
#32
Sep 22, 2015
Out of curiosity, is the only advantage of this that it allows you to see the affects of your tweaks without exiting and restarting? Or does it also edit settings that aren't in the config file?
 
M

marvelmaster

Forum veteran
#33
Sep 22, 2015
KNGRSM said:
great!

may I ask how you added or created the new main menu entries ? you know PANEL_SHADOWS, PANEL_WATER etc.?
Click to expand...
the folder where xmls for the menues are(...bin\config\r4game\user_config_matrix) just copy for example the postprocess.xml file then edit the xxx (Group id="xxx" displayName="video.xxx")
The "video" makes the line appear in the video section, if you leave the "video" it appears in the menu above...
But the PANEL_ rly fues me up-.-


Phinnway said:
Out of curiosity, is the only advantage of this that it allows you to see the affects of your tweaks without exiting and restarting? Or does it also edit settings that aren't in the config file?
Click to expand...
Jeah its just for tweakers and modder to look what ingamesettings actually do and compare them without restarting the game :eek:
So for lowspecPC gamers they can reduce the quality further..(look pic above no grass or trees^^)
and the highspecPC gamers can tweak the graphics to the max for best experience...
Unfortunately only user.settings and input.settings can be edited by this...
would be epic if there was a way to edit other values :|

---------- Updated at 02:02 AM ----------

briefly speaking...to do comparisons like this


 
Last edited: Sep 22, 2015
  • RED Point
Reactions: Phinnway and Holgar82
F

FreeFall24

Senior user
#34
Sep 22, 2015
I'm just sitting here hoping all this LOD screw ups can be resolved, and NPC's stop magically appearing from other dimensions, or severe texture pop-in, and objects, and shadows stop disappearing as I get closer to them, and stop fading away, or becoming more detailed as Geralt becomes 2 feet closer to bloody shadow, with those annoying lines/circle around Geralt.

Pretty much my biggest gripe, tired of all these damn pop-ins.

Being able to tweak what can already be tweaked from in-game is awesome, though. Just hoping 1.09, like, you know, actually fixes this game.
 
  • RED Point
Reactions: web-head91

Guest 2364765

Guest
#35
Sep 22, 2015
I have much simpler version of this that i made for myself.

I just exposed all settings in the game, changing presets into direct values.
I can go from 1999 mode to a setup that gives me 16 FPS without leaving the game, which is good i guess.
Though certain values seem to be clamped. And hairworks AA plainly breaks when using 16 samples.
 
C

CAPA14

Senior user
#36
Sep 22, 2015
marvelmaster said:
the folder where xmls for the menues are(...bin\config\r4game\user_config_matrix) just copy for example the postprocess.xml file then edit the xxx (Group id="xxx" displayName="video.xxx")
The "video" makes the line appear in the video section, if you leave the "video" it appears in the menu above...
But the PANEL_ rly fues me up-.-
Click to expand...
Wtf? Just copy paste and rename? That's it?
(Of course changing the variables inside too and stuff)

You can rename the xml file to whatever you like and the game will read it?

And how did you add descriptions? :D
 
Last edited: Sep 22, 2015
K

KNGRSM

Rookie
#37
Sep 22, 2015
CAPA14 said:
Wtf? Just copy paste and rename? That's it?
(Of course changing the variables inside too and stuff)

You can rename the xml file to whatever you like and the game will read it?

And how did you add descriptions? :D
Click to expand...
it's all in the xml and no, you will most likely not be able to create a new xml and have the game just "read" it.
 
M

marvelmaster

Forum veteran
#38
Sep 22, 2015
skacikpl said:
I have much simpler version of this that i made for myself.

I just exposed all settings in the game, changing presets into direct values.
I can go from 1999 mode to a setup that gives me 16 FPS without leaving the game, which is good i guess.
Though certain values seem to be clamped. And hairworks AA plainly breaks when using 16 samples.
Click to expand...
Changing settings via command or just like me withing the menu?

CAPA14 said:
Wtf? Just copy paste and rename? That's it?
(Of course changing the variables inside too and stuff)

You can rename the xml file to whatever you like and the game will read it?

And how did you add descriptions? :D
Click to expand...
KNGRSM said:
it's all in the xml and no, you will most likely not be able to create a new xml and have the game just "read" it.
Click to expand...
The game does not read the xml name..it reads whatever is written in any xml in that folder...so if you write INTO a new random xml for example ....video.blablub.... a new menu named blablub is created
The description is just many spaces and kind of underline html code... unfortunately only underline works....no color or fontsize :(
 
Last edited: Sep 22, 2015

Guest 2364765

Guest
#39
Sep 22, 2015
marvelmaster said:
Changing settings via command or just like me withing the menu?
Click to expand...
Via menu.


Console only has config wrapper functions to change settings, which would mean that it could change only what is accessible via the options menu.
But again with the restriction that it could only change entire preset but not particular sub-settings of given preset.
 
C

CAPA14

Senior user
#40
Sep 22, 2015
marvelmaster said:
Changing settings via command or just like me withing the menu?





The game does not read the xml name..it reads whatever is written in any xml in that folder...so if you write INTO a new random xml for example ....video.blablub.... a new menu named blablub is created
The description is just many spaces and kind of underline html code... unfortunately only underline works....no color or fontsize :(
Click to expand...
So it CAN be any name! (unless I misunderstood)

Btw, about the "True/False" values... if you didn't figure out yet.

Have you tried using - displayType="TOOGLE"

Here is an example custom var that I use in my HUD Killer mod which alters the hud.xml.

<Var id="InteractionsModule" displayName="Interactions" displayType="TOGGLE" tags="customNames;customDisplayName"/>

InteractionsModule is a bool, and works as intended.
 
Prev
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
Next
First Prev 2 of 6

Go to page

Next Last
Share:
Facebook Twitter Reddit Pinterest Tumblr WhatsApp Email Link
  • English
    English Polski (Polish) Deutsch (German) Русский (Russian) Français (French) Português brasileiro (Brazilian Portuguese) Italiano (Italian) 日本語 (Japanese) Español (Spanish)

STAY CONNECTED

Facebook Twitter YouTube
CDProjekt RED Mature 17+
  • Contact administration
  • User agreement
  • Privacy policy
  • Cookie policy
  • Press Center
© 2018 CD PROJEKT S.A. ALL RIGHTS RESERVED

The Witcher® is a trademark of CD PROJEKT S. A. The Witcher game © CD PROJEKT S. A. All rights reserved. The Witcher game is based on the prose of Andrzej Sapkowski. All other copyrights and trademarks are the property of their respective owners.

Forum software by XenForo® © 2010-2020 XenForo Ltd.