Skip to content

Commit

Permalink
1.5 Alpha
Browse files Browse the repository at this point in the history
## Content
* New UI sounds
* New Systems (AsyncLoad, Autoset Graphics, Splash)
* New Sorters (Soft Prop Int, SkillMagic, SkillTech, Skill, Lua_OnlyValidValues, AssetCollectionMin1 )
* New Preferences (UI Sound, Fidelity Mode, VSync)
* New MetaSettings: (Shaders, Save, Splash, Lua)
* Movie Menu: Now plays BINK movies
* Lua: Added Common Syndicat Lua Libraries

## New Features
* Queued Linear Events
* Queued Queries
* Quest Component + Quest Type Script
* 3D Gridmap Component
* Actor Selector Struct
* Added Paker Subsystem (WIP)
* Actor Targeting Component
* Skin Modifiers

## Improvments
* Data Items: display thumbnail from Icon
* Data Widgets: Added functions "OnHighlightStateChange" & "OnHoverStateChange"
* Subscript Component uses improved paramter setters/getters
* Preferences can be saved to an ini
* Dynamic Cameras blend to SocketOffset & TargetOffset
* Gameplay Systems: Added Tagged Global Event Calls on Activation & Shutdown
* OmegaCharacter: Added DataItem and Tags as well as new components
* New Lua Functions
  • Loading branch information
StudioSyndiCatCaius committed Oct 11, 2024
1 parent c12449e commit 9e1a8d4
Show file tree
Hide file tree
Showing 707 changed files with 5,496 additions and 650 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
Intermediate
Binaries
OGF_ExampleGame_23-10-7.zip
/OmegaGameFramework/Content/_TEMPLATES
3 changes: 2 additions & 1 deletion OmegaGameFramework/Config/DefaultOmegaGameFramework.ini
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
[CoreRedirects]
+FunctionRedirects=(OldName="/Script/OmegaGameFramework.OmegaGameMode.local_activatePersistenSystems",NewName="/Script/OmegaGameFramework.OmegaGameMode.Local_ActivatePersistenSystems")
+FunctionRedirects=(OldName="/Script/OmegaGameFramework.OmegaGameMode.local_activatePersistenSystems",NewName="/Script/OmegaGameFramework.OmegaGameMode.Local_ActivatePersistenSystems")
+PropertyRedirects=(OldName="/Script/OmegaGameFramework.OmegaGrid3D_Tile.REF_Occupants",NewName="/Script/OmegaGameFramework.OmegaGrid3D_Tile.Occupants")
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/Blueprints/OmegaGameFunctions.uasset
Binary file not shown.
Binary file modified OmegaGameFramework/Content/Blueprints/PAL_OGF_BP.uasset
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/Animation/AT_Blink.uasset
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/Animation/AT_Falling.uasset
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/Animation/AT_Locomotion.uasset
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/Choice/OmegaChoice_Lua.uasset
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/Encounter/enc_Omega_Trash.uasset
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/Factions/Faction_Enemy.uasset
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/Factions/Faction_Player.uasset
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/Flow/FN_DialogMessage.uasset
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/Game/Dialog/dlg_Demo.uasset
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/HUD/OmegaDemo_HUD_Load.uasset
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/LinearEvents/LE_Battle.uasset
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/LinearEvents/LE_Choice_Jump.uasset
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/LinearEvents/LE_Lua_Call.uasset
Binary file not shown.
Binary file not shown.
Binary file modified OmegaGameFramework/Content/DEMO/LinearEvents/LE_Menu.uasset
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
33 changes: 33 additions & 0 deletions OmegaGameFramework/Content/DEMO/Lua/OmegaLua/Lib/lib_Hooks.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
SynHook={}

local hook_list={}

---@param hook string
---@param name string
---@param func function
function SynHook.Add(hook,name,func)
if not (hook_list[hook]) then
hook_list[hook]={}
end
hook_list[hook][name]=func
end

---@param hook string
---@param name string
function SynHook.Remove(hook,name)
if hook_list[hook] and hook_list[hook][name] then
hook_list[hook][name]=nil
end
end

---@param hook string
function SynHook.Call(hook,meta)
if hook_list[hook] then
print("Called Hook : "..hook.." with meta: "..tostring(meta))
for key, value in pairs(hook_list[hook]) do
print(" run hook event: "..key.." ")
value(meta)
end
end
end

38 changes: 38 additions & 0 deletions OmegaGameFramework/Content/DEMO/Lua/OmegaLua/Lib/lib_Literals.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
local a={}

a.BOOL=function (input)
if (input) then
return input
end
return false
end

a.INT=function (input)
if (input) then
return input
end
return 0
end

a.FLOAT=function (input)
if (input) then
return input
end
return 0.0
end

a.STRING=function (input)
if (input) then
return input
end
return ''
end

a.TABLE=function (input)
if (input) then
return input
end
return {}
end

SynLit=a
23 changes: 23 additions & 0 deletions OmegaGameFramework/Content/DEMO/Lua/OmegaLua/Lib/lib_Math.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
local example_transform={
{0,0,0},
{0,0,0},
{1,1,1},
}
local example_vector3={x=0,y=0,z=0}
local example_vector2={0,0}

SynMath={
--Vector 3
V3={
Lerp=function (a,b,alpha)
return {x=0,y=0,z=0}
end
},
--Vector 2
V2={
Lerp=function (a,b,alpha)
return {x=0,y=0,}
end
},
}

65 changes: 65 additions & 0 deletions OmegaGameFramework/Content/DEMO/Lua/OmegaLua/Lib/lib_Parser.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@


SynParse={
CSV=function(input)
local result = {}
local headers = {}
local isFirstLine = true

local function parseLine(line)
local row = {}
local fieldStart = 1
local inQuotes = false
local currentField = ""

for i = 1, #line do
local c = line:sub(i, i)
if c == '"' then
-- Toggle inQuotes flag
inQuotes = not inQuotes
elseif c == ',' and not inQuotes then
-- End of field
table.insert(row, currentField)
currentField = ""
fieldStart = i + 1
else
-- Accumulate characters into the current field
currentField = currentField .. c
end
end
-- Capture any remaining field data after the last delimiter
if currentField ~= "" or line:sub(-1) == ',' then
table.insert(row, currentField)
end
return row
end

-- Split the input into lines
for line in input:gmatch("[^\r\n]+") do
if isFirstLine then
-- Capture headers
headers = parseLine(line)
isFirstLine = false
else
-- Process each subsequent line according to headers
local rowValues = parseLine(line)
local row = {}
for i, header in ipairs(headers) do
row[header] = rowValues[i] or ""
end
table.insert(result, row)
end
end

return result
end,
--A linear txt game dialogue ditiing format Developed by studio SyndiCat.
SCB=function (string)
return {}
end,

}




75 changes: 75 additions & 0 deletions OmegaGameFramework/Content/DEMO/Lua/OmegaLua/Lib/lib_SCRIBER.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
-- parser for SCRIBER dialogue format for lua

SCRIBER={
PARSE={
}
}

local c={

}



SCRIBER.PARSE.csv=function (script)

end

SCRIBER.PARSE.txt=function (input)
local tbl = {}
local current_section = tbl
local sections = {}
local function parse_line(line)

--CHOICES
if line:match("^%+%s*$") then
table.insert(tbl, {choices = {}})
current_section = tbl[#tbl].choices

--LINE KEY
elseif line:match("^%s*<([^>]+)%s*$") then
local key = line:match("^%s*<([^>]+)%s*$")
table.insert(tbl, {key = key})
current_section = tbl

--JUMP TO KEY
elseif line:match("^%s*>%s*(%w+)%s*$") then
local jump = line:match("^%s*>%s*(%w+)%s*$")
table.insert(current_section, {jump = jump})

--Function call
elseif line:match("^%s*%[.*%]%s*$") then
local call = line:match("^%s*%[(.*)%]%s*$")
table.insert(current_section, {call = load("return function() " .. call .. " end")()})

--Condition Call
elseif line:match("^%s*%{%s*return.*%}%s*$") then
local condition = line:match("^%s*%{%s*(return.*)%}%s*$")
table.insert(current_section, {condition = load("return function() " .. condition .. " end")()})

--normal line
elseif line:match("^%s*Fellow:%s*(.*)%s*$") then
local text, tags = line:match("^%s*Fellow:%s*(.*)%s*(#.*)%s*$")
tags = tags and tags:sub(2):split("#") or nil
table.insert(current_section, {speaker = 'Fellow', line = text, tags = tags})

--jump 2
elseif line:match("^%s*-%s*(.-)%s*>%s*(%w+)%s*$") then
local text, jump = line:match("^%s*-%s*(.-)%s*>%s*(%w+)%s*$")
table.insert(current_section, {text = text, jump = jump})

--ignore empty lines
elseif line:match("^%s*$") then
-- Ignore empty lines
else
table.insert(current_section, {speaker = '', line = line})
end
end

for line in input:gmatch("[^\r\n]+") do
parse_line(line)
end

return tbl

end
90 changes: 90 additions & 0 deletions OmegaGameFramework/Content/DEMO/Lua/OmegaLua/Lib/lib_String.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
local a={} --Strings

--- func desc
---@param str string
---@param at string
---@param reverse boolean
a.split = function (str, at, reverse)
local out = {left = "", right = "", success = false}
local pos

if reverse then
pos = str:match(".*()"..at)
else
pos = str:find(at)
end

if pos then
out.left = str:sub(1, pos - 1)
out.right = str:sub(pos + 1)
out.success = true
end

return out
end



-- Split a string by a delimiter
--replacers:
-- _BREAK = line break


a.parse = function (str, delimiter, include_delimiter)
local replacers = {
_Break = "^\r\n",
}

local new_delim = delimiter --.."(%w+)"
if replacers[delimiter] then
new_delim = replacers[delimiter]
end


local result = {}
local pattern = include_delimiter and ("([^" .. new_delim .. "]+)") or ("[^" .. new_delim .. "]+")

for match in string.gmatch(str, pattern) do
if not include_delimiter then
table.insert(result, match)
else
table.insert(result, new_delim .. match)
end
end

return result
end




a.ToValue=function (str)
if str == "true" then
return true
elseif str == "false" then
return false
elseif tonumber(str) then
return tonumber(str)
else
return str
end
end

a.extract = function (str, start, stop)
local out = ""
local start_pos, stop_pos

start_pos = str:find(start, 1, true)
if start_pos then
stop_pos = str:find(stop, start_pos + #start, true)
if stop_pos then
out = str:sub(start_pos + #start, stop_pos - 1)
end
end

return out
end



SynString=a
Loading

0 comments on commit 9e1a8d4

Please sign in to comment.