bad-scientists / af-script-packet Goto Github PK
View Code? Open in Web Editor NEWFawkes' & Auronen's script package for Gothic 1 and Gothic 2: Night of the Raven.
Fawkes' & Auronen's script package for Gothic 1 and Gothic 2: Night of the Raven.
If you got a bow readied your hero got an arrow in righthand but when you draw crossbow you got only crossbow in your right and lefthand so it cant check if you got a bolt ready but no bolts in EQ and automatically spam that you got no ammo.
Requires Ikarus, objCheckInheritance.d, insertAnything.d
MEM_CheckInheritance is used instead objCheckInheritance.
[] spatialState.d
In Npc_GetWaterDepthKnee
function zTConfig
class is used, but not defined.
[] Standalone-Packages\G12-Trialogue\trialogue.d
In Trialogue_Invite
function Npc_StartAIState
function is used, but not defined.
Hi devs,
There is an issue that makes Gothic crush. The issue is in interface.d with _hook_oCNpc_OnMessage() method.
I described about that in this thread: https://forum.worldofplayers.de/forum/threads/1600658-Gothic-crush-with-error-from-Stacktrace
CtoB function is not page-boundary safe.
As mud-freak wrote here:
In the second line within the function, reading an integer (four bytes) instead of one byte might read across page boundaries in memory. How ever small the chances are of that ever happening - it did!. See more details in the linked post. This issue was then addressed in MEM_ReadByte (Ikarus). MEM_ReadByte is, of course, the better choice here than reading an integer when only interested in the first byte. For further discussion, it might be best to move to the Ikarus-thread in the editing section of the forum, to not go too far off-topic here.
If I created oCTriggerScript after world loading; then Wld_SendTrigger doesn't work. Only, if I save and load game.
But If I create oCTriggerScript while world loading, then Wld_SendTrigger works immediately.
Maybe this has connection with not support for cloning zCTrigger and oCTriggerScript.
source: https://discord.com/channels/989316194148433950/989318530652586045/1076583447214166209
Somebody clever wrote: Yes, it would probably be best to abstract the inside of NPC_RemoveInventoryCategory into a internal function and expose cleaner API.
To avoid calling Hlp_IsValidNpc
8 times.
Setting user values in the *_API.d-files doesn't seem to work, the defaults are always taken instead.
I've copied betterBars_API.d
, uncommented all code and changed several fields, but changes are not reflected in-game:
const int HEALTHBAR_DISPLAYMETHOD = BarDisplay_AlwaysOn;
const int HEALTHBAR_DISPLAYVALUES = 0;
const int MANABAR_DISPLAYVALUES = 0;
const int SWIMBAR_DISPLAYVALUES = 0;
const int FOCUSBAR_DISPLAYVALUES = 0;
Display behavior seems to remain Standard, as only the health bar is displayed. Also the text values are still displayed over the bars.
I've tested this on a fresh install of G1 with LeGo_Init(LeGo_All & ~LeGo_Bloodsplats);
on latest master (all LeGo, Ikarus and AFSP), Gothic.src looks as follows:
Ikarus\Ikarus_G1.src
LeGo\Header_G1.src
[Default Gothic AI_* includes]
AFSP\_headers_G1_All.src
AFSP\API\*.D
Maybe there's something wrong on my part?
I was wondering if it would make sense to refactor all instances of user settings made to Gothic.ini to move to their own section in Gothic.ini as suggest by Ikarus author in the readme:
//BEACHTE:-Falls du neue Optionen einführst gebietet der gute Stil, dass du dies in einer eigenen Sektion tust und die Optionen verständlich benennst! Als Norm schlage ich vor, dass eine Mod mit Namen "myMod" nur in der Sektion "myMod" oder "MOD_mymod" neue Eigenschaften einführt (und nicht etwa in der Sektion "GAME" oder "PERFORMANCE").
(//NOTE:-If you're introducing new options, it's good practice to do so in your own properly named sections! I would suggest the following convention: a mod with the name "myMod" should only write new settings into it's own section "myMod" or "MOD_mymod" and not in sections like "GAME" or "PERFORMANCE".)
So for example settings for Better Bars like this:
MEM_SetGothOpt ("GAME", "manaBarDisplayMethod", IntToString (_manaBar_DisplayMethod));
Could be written like this instead:
MEM_SetGothOpt ("AFSP", "manaBarDisplayMethod", IntToString (_manaBar_DisplayMethod));
I think it would be a good convention to better distinguish AFSP mod settings in Gothic.ini.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.