Soccer Gaming Forums
Registration is free! Calendar Find other members Frequently Asked Questions Rules User CP Tools Home


Go Back   Soccer Gaming Forums | FIFA Forums, FIFA Mods, Futball > FIFA Series > FIFA 14 Forum

Reply
 
Thread Tools Search this Thread Rate Thread Display Modes
Old 31-07-2014, 08:00:AM   #1
Dramacydal
Club Supporter
 
Join Date: Oct 2007
Posts: 55
Dramacydal is on a distinguished road
FIFA World Lua Decryption

So Title says it all.Its first chunkzip but afterwards its says this first
<--LuaQ
I have started to add some stuff rev mod from fifa 13 works partially.Adboard,kits(use 1 mip-map uncompressed version),numbers assigned in db,3000 faces added.Changed ingame fonts updated kit previews.Boots dont work from FIFA 14 or Pitches.Oh well I hope somebody here could help out.Thanks Guys.Her the files original and Unpacked

http://www31.zippyshare.com/v/1138472/file.html
Dramacydal is offline   Reply With Quote
Old 31-07-2014, 01:13:PM   #2
dissectionalone
Senior Squad
 
Join Date: Oct 2011
Posts: 1,330
dissectionalone has a spectacular aura aboutdissectionalone has a spectacular aura about
As far as I'm aware of and unless this is something that changed when they made the beta available worldwide and updated the game, The files were encrypted in the same way as the ones in Fifa 14... At least jenkey's file explorer opens them the same way and aside from that and the container sizes, the rx3 files have the Fifa 12/13 format and are useful for updating Fifa 12 and 13 with new faces and so on, but editing fifa world would be like modding only the Ultimate Team mode in fifa 13/14, which is pretty much what fifa world is. Not much point in doing it I guess
dissectionalone is offline   Reply With Quote
Old 31-07-2014, 01:28:PM   #3
Dramacydal
Club Supporter
 
Join Date: Oct 2007
Posts: 55
Dramacydal is on a distinguished road
Quote:
Originally Posted by dissectionalone View Post
As far as I'm aware of and unless this is something that changed when they made the beta available worldwide and updated the game, The files were encrypted in the same way as the ones in Fifa 14... At least jenkey's file explorer opens them the same way and aside from that and the container sizes, the rx3 files have the Fifa 12/13 format and are useful for updating Fifa 12 and 13 with new faces and so on, but editing fifa world would be like modding only the Ultimate Team mode in fifa 13/14, which is pretty much what fifa world is. Not much point in doing it I guess
Im not asking to open up rx3 files.I can open them up.This is about the Lua files which at first have the same encryption as Fifa 14 but after that have another encryption.Also adding new kits,faces,boots,tattos etc is not pointless.Sure I cant have new leagues but thats not important since as you mentioned this is Ultimate Team.
Dramacydal is offline   Reply With Quote
Old 31-07-2014, 01:45:PM   #4
dissectionalone
Senior Squad
 
Join Date: Oct 2011
Posts: 1,330
dissectionalone has a spectacular aura aboutdissectionalone has a spectacular aura about
Quote:
Originally Posted by Dramacydal View Post
Im not asking to open up rx3 files.I can open them up.This is about the Lua files which at first have the same encryption as Fifa 14 but after that have another encryption.Also adding new kits,faces,boots,tattos etc is not pointless.Sure I cant have new leagues but thats not important since as you mentioned this is Ultimate Team.
I get what your saying, mate. I just used the rx3 files as an example. The only time I looked into the majority of non graphic files from Fifa World, they looked pretty much like the regular Fifa 12 ones... Perhaps the updated ones have the same encryption as the ones found in Fifa Online 3. Have you tried opening those with a hex editor?
dissectionalone is offline   Reply With Quote
Old 31-07-2014, 08:59:PM   #5
tokke001
Senior Squad
 
Join Date: Oct 2012
Location: Belgium
Posts: 2,146
tokke001 is on a distinguished road
Quote:
Originally Posted by Dramacydal View Post
Im not asking to open up rx3 files.I can open them up.This is about the Lua files which at first have the same encryption as Fifa 14 but after that have another encryption.Also adding new kits,faces,boots,tattos etc is not pointless.Sure I cant have new leagues but thats not important since as you mentioned this is Ultimate Team.
Quote:
Originally Posted by dissectionalone View Post
I get what your saying, mate. I just used the rx3 files as an example. The only time I looked into the majority of non graphic files from Fifa World, they looked pretty much like the regular Fifa 12 ones... Perhaps the updated ones have the same encryption as the ones found in Fifa Online 3. Have you tried opening those with a hex editor?
I v been exporting files from fifa online 3 in the past (wich were protected) with a hex-editor

I ll see what I can do...
tokke001 is offline   Reply With Quote
Old 01-08-2014, 05:17:AM   #6
Dramacydal
Club Supporter
 
Join Date: Oct 2007
Posts: 55
Dramacydal is on a distinguished road
Quote:
Originally Posted by tokke001 View Post
I v been exporting files from fifa online 3 in the past (wich were protected) with a hex-editor

I ll see what I can do...
Thank you
Dramacydal is offline   Reply With Quote
Old 01-08-2014, 02:38:PM   #7
tokke001
Senior Squad
 
Join Date: Oct 2012
Location: Belgium
Posts: 2,146
tokke001 is on a distinguished road
Quote:
Originally Posted by Dramacydal View Post
Thank you
as u mentioned,
at the first line of the lua files there s written "LuaQ"

it s a precompiled script or something

found this about luaQ :
http://www.roblox.com/Forum/ShowPost...ostID=61335747

http://stackoverflow.com/questions/1...-deobfuscation


think it s difficult to decompile,
there may be some program somewhere but not sure...

here u find some programs (under "Assembler / Disassembler / Bytecodes") for decompiling
http://lua-users.org/wiki/LuaTools

Last edited by tokke001; 01-08-2014 at 02:52:PM.
tokke001 is offline   Reply With Quote
Old 03-08-2014, 11:28:AM   #8
Fidel Gameplay
Senior Squad
 
Fidel Gameplay's Avatar
 
Join Date: Aug 2006
Posts: 1,848
Fidel Gameplay is a glorious beacon of lightFidel Gameplay is a glorious beacon of lightFidel Gameplay is a glorious beacon of lightFidel Gameplay is a glorious beacon of lightFidel Gameplay is a glorious beacon of lightFidel Gameplay is a glorious beacon of light
Send a message via MSN to Fidel Gameplay
Thumbs up

Hello,
you can download all NG_LUA_FILES_RAW_DATA (FIFA World online 3) here in my online cloud:
http://1drv.ms/1ubBZDQ
These are not your files uploaded in your first post, but I've extracted all files in raw format data.
In fact, you have to rename all files with related lua name.
You can open lua files with notepad++ and take a look.
For example the file 0000001c.lua is the stadium.lua.
You can probably edit the bh with an hex editor in order to remove the reference and make the exe read from folder.
There are many interesting things, checking files the game structure seems to be an
Hybrid game (old fifa 14 gen merged with new fifa ng game), probably we will find these files in fifa 15.
I hope that scousers take a look at these files, can probably anticipate the work for rev mod 15.

I'm also able to open the database in raw format data (not included in the pack):
00000023.xml
00000024.dat (the db in raw format).
Probably I use the db to look at new player traits for add to new gp evo db (on players tables I see three columns of trait).

This is a preview of stadium.lua:
very interesting the new pitch fx in HD (is why you see a better grass in FWO3)
[gr:CreateMaterial(stadium, lod, part, "hdr_pitch.fx")]

Code:
 function StadiumUpdate(idx)
	local as = gSportsRNA
	local stadium = as:GetTable("wvStadium", idx)

    db.stadium[idx].lightType = as:GetInt(stadium, "stadLightType")
	db.stadium[idx].stadiumID = as:GetInt(stadium, "stadID")
	db.stadium[idx].prefix = as:GetString(stadium, "stadNamePrefix")
	-- db.stadium[idx].asset = db.stadium[idx].prefix .."_".. db.stadium[idx].stadiumID .."_".. db.stadium[idx].lightType.."_container_0"
	
	
	db.stadium[idx].pitchColor = as:GetInt(stadium, "stadLightType")
	db.stadium[idx].mowPattern = as:GetInt(stadium, "pitchMowPattern")
	db.stadium[idx].wearPattern = as:GetInt(stadium, "pitchWearPattern")
	
	db.stadium[idx].adboardID = as:GetInt(stadium, "adboardID" )
	db.stadium[idx].adboardGroup = as:GetInt(stadium, "adboardGroup" )
	
	db.stadium[idx].homeTeamID = as:GetInt(stadium, "homeTeamID" )
	db.stadium[idx].homeTeamTypeID = as:GetInt(stadium, "homeTeamTypeID" )
	db.stadium[idx].awayTeamID = as:GetInt(stadium, "awayTeamID" )
	db.stadium[idx].awayTeamTypeID = as:GetInt(stadium, "awayTeamTypeID" )
	
	db.stadium[idx].homePrimaryColour = as:GetInt(stadium, "homePrimaryColour")
	db.stadium[idx].homeSecondaryColour = as:GetInt(stadium, "homeSecondaryColour")
end

function StadiumAssetBind(stadium)
	local gr = gRenderables
	local lod = 0
	local priority = 1	-- Load all the stadium assets at a higher priority than the rest, so we can get it loaded early
	local banneridx = 0
	local maxbanners = 11

	-- Get all assets we require in...
	gr:AddCallback(stadium, lod, "StadiumUpdate(?)")
	gr:AddAsset(stadium, lod, "shader", "data/fifarna/shader.big")

	gr:AddAsset(stadium, lod, "stadium",                "data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	
	-- Assets we need to intercept
	gr:AddAsset(stadium, lod, "pitchambient",					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "pitchnolineambient",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "jumbotronambient",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "adboardambient",					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "adboardscrollingambient",		"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "adboarddigitalambient",			"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
    gr:AddAsset(stadium, lod, "adboarddigitalglow",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
    gr:AddAsset(stadium, lod, "adboarddigitalglowambient",		"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
    gr:AddAsset(stadium, lod, "adboardsingledigitalambient",	"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
    gr:AddAsset(stadium, lod, "adboardsingledigitalglow",		"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "adboardsingledigitalglowambient","data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "crestambient",					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "homeprimaryambient",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "homesecondaryambient",			"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "bannerhomeambient",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "bannerawayambient",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "pitchadambient",					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "diffuseshadow",					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "diffuseshadowambient",			"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)

    	local bannermat
	for banneridx=0, maxbanners-1 do 
		bannermat = string.format( "banner%sambient", banneridx )
		gr:AddAsset(stadium, lod, bannermat,					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	end
	
	
	-- Additional assets to load
	gr:AddAsset(stadium, lod, "mow", "data/sceneassets/pitch/pitchmowpattern_${db.stadium[?].mowPattern}_textures.rx3", priority)
	gr:AddAsset(stadium, lod, "cmn", "data/sceneassets/pitch/pitch_common_textures.rx3", priority)
	gr:AddAsset(stadium, lod, "cov", "data/sceneassets/pitch/pitchcovmap_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_textures.rx3", priority)
	gr:AddAsset(stadium, lod, "col", "data/sceneassets/pitch/pitchcolor_${db.stadium[?].pitchColor}_textures.rx3", priority)
	gr:AddAsset(stadium, lod, "globaltex", "data/sceneassets/globaltex/globaltex_0.rx3", priority)
	gr:AddAsset(stadium, lod, "wear", "data/sceneassets/pitch/pitchwearpattern_${db.stadium[?].wearPattern}_textures.rx3", priority)
	--TODO direct it into host city texture
	gr:AddAsset(stadium, lod, "adboardsingletex", "data/sceneassets/adboard/adboard_${db.stadium[?].adboardID}_${db.stadium[?].adboardGroup}.rx3", priority)
	gr:AddAsset(stadium, lod, "homekittex", "data/sceneassets/kit/kit_${db.stadium[?].homeTeamID}_${db.stadium[?].homeTeamTypeID}_0.rx3", priority)
	gr:AddAsset(stadium, lod, "homebannertex", "data/sceneassets/banner/banner_${db.stadium[?].homeTeamID}.rx3;data/sceneassets/banner/banner_0.rx3", priority)
	gr:AddAsset(stadium, lod, "awaybannertex", "data/sceneassets/banner/banner_${db.stadium[?].awayTeamID}.rx3;data/sceneassets/banner/banner_0.rx3", priority)
	gr:AddAsset(stadium, lod, "pitchadtex", "data/sceneassets/pitchad/pitchad_${db.stadium[?].adboardID}.rx3", priority)

	-- Now generate custom materials (these should be named after the shader they are to replace)
	-- Pitch 
	local part = "pitchambient"
	gr:CreateMaterial(stadium, lod, part, "hdr_pitch.fx")
	gr:SetTexture(stadium, lod, part, "textures", "noiseTexture", "globaltex", "multiFreq_noise")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "col", "grass_color")
	-- ambient should magically be populated by the original state block of the stadium
	gr:SetTexture(stadium, lod, part, "textures", "normalMap", "mow", "grass_normal")
	gr:SetTexture(stadium, lod, part, "textures", "alphamask", "wear", "grass_wear")
	gr:SetTexture(stadium, lod, part, "textures", "pitchLinesMap", "cmn", "grass_pitchlines")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "PitchFlatShadow", "flatshadows")
	
	part = "pitchnolineambient"
	gr:CreateMaterial(stadium, lod, part, "hdr_pitchnoline.fx")
	gr:SetTexture(stadium, lod, part, "textures", "noiseTexture", "globaltex", "multiFreq_noise")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "col", "grass_color")
	-- ambient should magically be populated by the original state block of the stadium
	-- gr:SetTexture(stadium, lod, part, "textures", "normalMap", "mow", "grass_normal")
	-- gr:SetTexture(stadium, lod, part, "textures", "alphamask", "wear", "grass_wear")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "PitchFlatShadow", "flatshadows")

	-- Render to texture jumbotron
	part = "jumbotronambient"
	-- gr:CreateMaterialFromAttribulator(stadium, lod, part, "jumbotronambient", "${AttribMaterial('jumbotronambient')}")
	gr:CreateMaterial(stadium, lod, part, "jumbotron.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "jumbotronMap", "FrameGrab0")
	gr:SetTexture(stadium, lod, part, "textures", "LEDTexture", "globaltex", "LED_cm")
	
	-- Stadium Adboards
	-- All of them redirected into runtime texture managed by adboard renderable
	-- The exception is adboardsingledigitalambient and adboardsingledigitalglowambient which
	-- show a completely different not switching texture all the time
	part = "adboardambient"
	gr:CreateMaterial(stadium, lod, part, "adboardambient.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", "adboard${?}")
	
	part = "adboardscrollingambient"
	gr:CreateMaterial(stadium, lod, part, "adboardscrollingambient.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", "adboard${?}")

	part = "adboarddigitalambient"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalambient.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", "adboard${?}")
	gr:SetTexture(stadium, lod, part, "textures", "incandescenceMap", "globaltex", "digitalgrid_cm")	

	part = "adboarddigitalglow"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalglowambient.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", "adboard${?}")

	part = "adboarddigitalglowambient"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalglowambient.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", "adboard${?}")

	part = "adboardsingledigitalambient"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalambient.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "adboardsingletex", "adboard")
	gr:SetTexture(stadium, lod, part, "textures", "incandescenceMap", "globaltex", "digitalgrid_cm")	

	part = "adboardsingledigitalglow"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalglowambient.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "adboardsingletex", "adboard")

	part = "adboardsingledigitalglowambient"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalglowambient.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "adboardsingletex", "adboard")

	-- The home team crest in the stadium
	part = "crestambient"
	-- gr:CreateMaterialFromAttribulator(stadium, lod, part, "crestambient", "${AttribMaterial('crestambient')}")
	gr:CreateMaterial(stadium, lod, part, "env_Diff.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "homekittex", "crest_")
	
	-- Stadium Banners
	part = "bannerhomeambient"
	gr:CreateMaterial(stadium, lod, part, "env_Diff.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "homebannertex", "banner_")
	
	part = "bannerawayambient"
	gr:CreateMaterial(stadium, lod, part, "env_Diff.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "awaybannertex", "banner_")

    ------------------------------------------------------------------------------------------------------
	-- Stadium Banners with dynamic distribution
	local texname
	for banneridx=0, maxbanners-1 do 
		part = string.format( "banner%sambient", banneridx )
		texname = string.format( "banner%s", banneridx )
		gr:CreateMaterial(stadium, lod, part, "env_Diff.fx")
		gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", texname)
	end
    ------------------------------------------------------------------------------------------------------

	-- Team colours
	part = "homeprimaryambient"
	gr:CreateMaterial(stadium, lod, part, "env_DiffColour.fx")
	gr:SetConstantARGB(stadium, lod, part, "global", "envColour", "${db.stadium[?].homePrimaryColour}")
	
	part = "homesecondaryambient"
	gr:CreateMaterial(stadium, lod, part, "env_DiffColour.fx")
	gr:SetConstantARGB(stadium, lod, part, "global", "envColour", "${db.stadium[?].homeSecondaryColour}")
	
	-- Pitch adboards (fake 3d)
	part = "pitchadambient"
	gr:CreateMaterial(stadium, lod, part, "env_Diff.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "pitchadtex", "pitchad")
	
	
	-- Flatshadow enabled geometry
	part = "diffuseshadowambient"
	gr:CreateMaterial(stadium, lod, part, "env_Diff_flatshadow.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "PitchFlatShadow", "flatshadows")
	
	-- Flatshadow enabled geometry
	part = "diffuseshadow"
	gr:CreateMaterial(stadium, lod, part, "env_Diff_flatshadow.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "PitchFlatShadow", "flatshadows")
	
	
end
One of the new ng stadium here, only the pic:


Bye and good luck!

Last edited by Fidel Gameplay; 03-08-2014 at 11:32:AM.
Fidel Gameplay is offline   Reply With Quote
Old 05-08-2014, 08:49:AM   #9
Dramacydal
Club Supporter
 
Join Date: Oct 2007
Posts: 55
Dramacydal is on a distinguished road
Quote:
Originally Posted by Fidel Gameplay View Post
Hello,
you can download all NG_LUA_FILES_RAW_DATA (FIFA World online 3) here in my online cloud:
http://1drv.ms/1ubBZDQ
These are not your files uploaded in your first post, but I've extracted all files in raw format data.
In fact, you have to rename all files with related lua name.
You can open lua files with notepad++ and take a look.
For example the file 0000001c.lua is the stadium.lua.
You can probably edit the bh with an hex editor in order to remove the reference and make the exe read from folder.
There are many interesting things, checking files the game structure seems to be an
Hybrid game (old fifa 14 gen merged with new fifa ng game), probably we will find these files in fifa 15.
I hope that scousers take a look at these files, can probably anticipate the work for rev mod 15.

I'm also able to open the database in raw format data (not included in the pack):
00000023.xml
00000024.dat (the db in raw format).
Probably I use the db to look at new player traits for add to new gp evo db (on players tables I see three columns of trait).

This is a preview of stadium.lua:
very interesting the new pitch fx in HD (is why you see a better grass in FWO3)
[gr:CreateMaterial(stadium, lod, part, "hdr_pitch.fx")]

Code:
 function StadiumUpdate(idx)
	local as = gSportsRNA
	local stadium = as:GetTable("wvStadium", idx)

    db.stadium[idx].lightType = as:GetInt(stadium, "stadLightType")
	db.stadium[idx].stadiumID = as:GetInt(stadium, "stadID")
	db.stadium[idx].prefix = as:GetString(stadium, "stadNamePrefix")
	-- db.stadium[idx].asset = db.stadium[idx].prefix .."_".. db.stadium[idx].stadiumID .."_".. db.stadium[idx].lightType.."_container_0"
	
	
	db.stadium[idx].pitchColor = as:GetInt(stadium, "stadLightType")
	db.stadium[idx].mowPattern = as:GetInt(stadium, "pitchMowPattern")
	db.stadium[idx].wearPattern = as:GetInt(stadium, "pitchWearPattern")
	
	db.stadium[idx].adboardID = as:GetInt(stadium, "adboardID" )
	db.stadium[idx].adboardGroup = as:GetInt(stadium, "adboardGroup" )
	
	db.stadium[idx].homeTeamID = as:GetInt(stadium, "homeTeamID" )
	db.stadium[idx].homeTeamTypeID = as:GetInt(stadium, "homeTeamTypeID" )
	db.stadium[idx].awayTeamID = as:GetInt(stadium, "awayTeamID" )
	db.stadium[idx].awayTeamTypeID = as:GetInt(stadium, "awayTeamTypeID" )
	
	db.stadium[idx].homePrimaryColour = as:GetInt(stadium, "homePrimaryColour")
	db.stadium[idx].homeSecondaryColour = as:GetInt(stadium, "homeSecondaryColour")
end

function StadiumAssetBind(stadium)
	local gr = gRenderables
	local lod = 0
	local priority = 1	-- Load all the stadium assets at a higher priority than the rest, so we can get it loaded early
	local banneridx = 0
	local maxbanners = 11

	-- Get all assets we require in...
	gr:AddCallback(stadium, lod, "StadiumUpdate(?)")
	gr:AddAsset(stadium, lod, "shader", "data/fifarna/shader.big")

	gr:AddAsset(stadium, lod, "stadium",                "data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	
	-- Assets we need to intercept
	gr:AddAsset(stadium, lod, "pitchambient",					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "pitchnolineambient",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "jumbotronambient",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "adboardambient",					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "adboardscrollingambient",		"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "adboarddigitalambient",			"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
    gr:AddAsset(stadium, lod, "adboarddigitalglow",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
    gr:AddAsset(stadium, lod, "adboarddigitalglowambient",		"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
    gr:AddAsset(stadium, lod, "adboardsingledigitalambient",	"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
    gr:AddAsset(stadium, lod, "adboardsingledigitalglow",		"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "adboardsingledigitalglowambient","data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "crestambient",					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "homeprimaryambient",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "homesecondaryambient",			"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "bannerhomeambient",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "bannerawayambient",				"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "pitchadambient",					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "diffuseshadow",					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	gr:AddAsset(stadium, lod, "diffuseshadowambient",			"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)

    	local bannermat
	for banneridx=0, maxbanners-1 do 
		bannermat = string.format( "banner%sambient", banneridx )
		gr:AddAsset(stadium, lod, bannermat,					"data/sceneassets/stadium/${db.stadium[?].prefix}_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_container_0.rx3", priority)
	end
	
	
	-- Additional assets to load
	gr:AddAsset(stadium, lod, "mow", "data/sceneassets/pitch/pitchmowpattern_${db.stadium[?].mowPattern}_textures.rx3", priority)
	gr:AddAsset(stadium, lod, "cmn", "data/sceneassets/pitch/pitch_common_textures.rx3", priority)
	gr:AddAsset(stadium, lod, "cov", "data/sceneassets/pitch/pitchcovmap_${db.stadium[?].stadiumID}_${db.stadium[?].lightType}_textures.rx3", priority)
	gr:AddAsset(stadium, lod, "col", "data/sceneassets/pitch/pitchcolor_${db.stadium[?].pitchColor}_textures.rx3", priority)
	gr:AddAsset(stadium, lod, "globaltex", "data/sceneassets/globaltex/globaltex_0.rx3", priority)
	gr:AddAsset(stadium, lod, "wear", "data/sceneassets/pitch/pitchwearpattern_${db.stadium[?].wearPattern}_textures.rx3", priority)
	--TODO direct it into host city texture
	gr:AddAsset(stadium, lod, "adboardsingletex", "data/sceneassets/adboard/adboard_${db.stadium[?].adboardID}_${db.stadium[?].adboardGroup}.rx3", priority)
	gr:AddAsset(stadium, lod, "homekittex", "data/sceneassets/kit/kit_${db.stadium[?].homeTeamID}_${db.stadium[?].homeTeamTypeID}_0.rx3", priority)
	gr:AddAsset(stadium, lod, "homebannertex", "data/sceneassets/banner/banner_${db.stadium[?].homeTeamID}.rx3;data/sceneassets/banner/banner_0.rx3", priority)
	gr:AddAsset(stadium, lod, "awaybannertex", "data/sceneassets/banner/banner_${db.stadium[?].awayTeamID}.rx3;data/sceneassets/banner/banner_0.rx3", priority)
	gr:AddAsset(stadium, lod, "pitchadtex", "data/sceneassets/pitchad/pitchad_${db.stadium[?].adboardID}.rx3", priority)

	-- Now generate custom materials (these should be named after the shader they are to replace)
	-- Pitch 
	local part = "pitchambient"
	gr:CreateMaterial(stadium, lod, part, "hdr_pitch.fx")
	gr:SetTexture(stadium, lod, part, "textures", "noiseTexture", "globaltex", "multiFreq_noise")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "col", "grass_color")
	-- ambient should magically be populated by the original state block of the stadium
	gr:SetTexture(stadium, lod, part, "textures", "normalMap", "mow", "grass_normal")
	gr:SetTexture(stadium, lod, part, "textures", "alphamask", "wear", "grass_wear")
	gr:SetTexture(stadium, lod, part, "textures", "pitchLinesMap", "cmn", "grass_pitchlines")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "PitchFlatShadow", "flatshadows")
	
	part = "pitchnolineambient"
	gr:CreateMaterial(stadium, lod, part, "hdr_pitchnoline.fx")
	gr:SetTexture(stadium, lod, part, "textures", "noiseTexture", "globaltex", "multiFreq_noise")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "col", "grass_color")
	-- ambient should magically be populated by the original state block of the stadium
	-- gr:SetTexture(stadium, lod, part, "textures", "normalMap", "mow", "grass_normal")
	-- gr:SetTexture(stadium, lod, part, "textures", "alphamask", "wear", "grass_wear")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "PitchFlatShadow", "flatshadows")

	-- Render to texture jumbotron
	part = "jumbotronambient"
	-- gr:CreateMaterialFromAttribulator(stadium, lod, part, "jumbotronambient", "${AttribMaterial('jumbotronambient')}")
	gr:CreateMaterial(stadium, lod, part, "jumbotron.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "jumbotronMap", "FrameGrab0")
	gr:SetTexture(stadium, lod, part, "textures", "LEDTexture", "globaltex", "LED_cm")
	
	-- Stadium Adboards
	-- All of them redirected into runtime texture managed by adboard renderable
	-- The exception is adboardsingledigitalambient and adboardsingledigitalglowambient which
	-- show a completely different not switching texture all the time
	part = "adboardambient"
	gr:CreateMaterial(stadium, lod, part, "adboardambient.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", "adboard${?}")
	
	part = "adboardscrollingambient"
	gr:CreateMaterial(stadium, lod, part, "adboardscrollingambient.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", "adboard${?}")

	part = "adboarddigitalambient"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalambient.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", "adboard${?}")
	gr:SetTexture(stadium, lod, part, "textures", "incandescenceMap", "globaltex", "digitalgrid_cm")	

	part = "adboarddigitalglow"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalglowambient.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", "adboard${?}")

	part = "adboarddigitalglowambient"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalglowambient.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", "adboard${?}")

	part = "adboardsingledigitalambient"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalambient.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "adboardsingletex", "adboard")
	gr:SetTexture(stadium, lod, part, "textures", "incandescenceMap", "globaltex", "digitalgrid_cm")	

	part = "adboardsingledigitalglow"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalglowambient.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "adboardsingletex", "adboard")

	part = "adboardsingledigitalglowambient"
	gr:CreateMaterial(stadium, lod, part, "adboarddigitalglowambient.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "adboardsingletex", "adboard")

	-- The home team crest in the stadium
	part = "crestambient"
	-- gr:CreateMaterialFromAttribulator(stadium, lod, part, "crestambient", "${AttribMaterial('crestambient')}")
	gr:CreateMaterial(stadium, lod, part, "env_Diff.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "homekittex", "crest_")
	
	-- Stadium Banners
	part = "bannerhomeambient"
	gr:CreateMaterial(stadium, lod, part, "env_Diff.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "homebannertex", "banner_")
	
	part = "bannerawayambient"
	gr:CreateMaterial(stadium, lod, part, "env_Diff.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "awaybannertex", "banner_")

    ------------------------------------------------------------------------------------------------------
	-- Stadium Banners with dynamic distribution
	local texname
	for banneridx=0, maxbanners-1 do 
		part = string.format( "banner%sambient", banneridx )
		texname = string.format( "banner%s", banneridx )
		gr:CreateMaterial(stadium, lod, part, "env_Diff.fx")
		gr:SetTextureFromRuntime(stadium, lod, part, "textures", "diffuseTexture", texname)
	end
    ------------------------------------------------------------------------------------------------------

	-- Team colours
	part = "homeprimaryambient"
	gr:CreateMaterial(stadium, lod, part, "env_DiffColour.fx")
	gr:SetConstantARGB(stadium, lod, part, "global", "envColour", "${db.stadium[?].homePrimaryColour}")
	
	part = "homesecondaryambient"
	gr:CreateMaterial(stadium, lod, part, "env_DiffColour.fx")
	gr:SetConstantARGB(stadium, lod, part, "global", "envColour", "${db.stadium[?].homeSecondaryColour}")
	
	-- Pitch adboards (fake 3d)
	part = "pitchadambient"
	gr:CreateMaterial(stadium, lod, part, "env_Diff.fx")
	gr:SetTexture(stadium, lod, part, "textures", "diffuseTexture", "pitchadtex", "pitchad")
	
	
	-- Flatshadow enabled geometry
	part = "diffuseshadowambient"
	gr:CreateMaterial(stadium, lod, part, "env_Diff_flatshadow.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "PitchFlatShadow", "flatshadows")
	
	-- Flatshadow enabled geometry
	part = "diffuseshadow"
	gr:CreateMaterial(stadium, lod, part, "env_Diff_flatshadow.fx")
	gr:SetTextureFromRuntime(stadium, lod, part, "textures", "PitchFlatShadow", "flatshadows")
	
	
end
One of the new ng stadium here, only the pic:


Bye and good luck!
Nice to see some of the big guns helping.But FIFA online 3 is not the same as FIFA World.FIFA World does read from folder,I dont really need bh.There is no data1.big etc. The FIFA World even reads from png so its like Jenkeys File Loader.Kit previews,Heads,Logos even scoreboards Menu and so on is all in png and game just loads it as is.Only restriction is FIFA 14 faces do not work.Even with boots so far i had Problem.Texture dont show up.Im useing FIFA 13 Rev mod Version 1.3 Player lua.Tattos dont work,Kit numbers dont get auto assigned or fonts.But faces work for players who previously had generic faces.Perhaps you could try to decomplie my uploaded lua files better.I have sent them to Scouser. But my friend couldnt say if its 100% correct or 50%.But thank you asnyway for help folks
Dramacydal is offline   Reply With Quote
Old 05-08-2014, 01:33:PM   #10
krisaju95
Manager
 
krisaju95's Avatar
 
Join Date: Aug 2011
Posts: 9,122
krisaju95 has a spectacular aura aboutkrisaju95 has a spectacular aura aboutkrisaju95 has a spectacular aura about
I managed to import faces without rev mod. I just replaced the existing files with new ones (not for generic faces)
__________________

krisaju95 is offline   Reply With Quote
Old 05-08-2014, 06:54:PM   #11
Dramacydal
Club Supporter
 
Join Date: Oct 2007
Posts: 55
Dramacydal is on a distinguished road
Quote:
Originally Posted by krisaju95 View Post
I managed to import faces without rev mod. I just replaced the existing files with new ones (not for generic faces)
Well i got generic faces and tattos working now.Will try to add more
Dramacydal is offline   Reply With Quote
Old 06-08-2014, 01:41:PM   #12
krisaju95
Manager
 
krisaju95's Avatar
 
Join Date: Aug 2011
Posts: 9,122
krisaju95 has a spectacular aura aboutkrisaju95 has a spectacular aura aboutkrisaju95 has a spectacular aura about
Cool. I wish this came earlier. Just finished div 1 in fut yesterday :P
__________________

krisaju95 is offline   Reply With Quote
Old 07-08-2014, 09:12:PM   #13
Dramacydal
Club Supporter
 
Join Date: Oct 2007
Posts: 55
Dramacydal is on a distinguished road
Quote:
Originally Posted by krisaju95 View Post
Cool. I wish this came earlier. Just finished div 1 in fut yesterday :P
And that menas what??The game continues into next year and unlike FIFA 15 you keep everything.This is the reason Im staying in this game
Dramacydal is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump





































All times are GMT +1. The time now is 09:46:AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
You Rated this Thread: