• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

xCastielx

New Member
Joined
Jun 4, 2015
Messages
17
Reaction score
0
so I got a doubt, I have a launcher which works with github, the only problem is that github only allows <100 mb files to be uploaded, if you're uploading any more you must add it as a github large file which bugs the launcher because its downloading the spr but it weights 1 kb (empty) so i need a way either to upload more than 100 mb to github without being as large file or i must BREAK THE SPR in little pieces and then make the client read all the pieces or i need some kind of auto compacting script which fuses all the broken parts of the spr after having em all in the folder, any suggest? please help.
 
though tibiaking and xtibia were a bad greedy community till i met otland, no1 helps here at all at least there they help sometimes but from all of my threads here none of them got any help...
 
You are using github as a directory to download your files from the client? github is not meant to be used that way

Sorry if I am mistaken. I did not understand your question properly, I never had issues uploading large files to github and later downloading them
 
You are using github as a directory to download your files from the client? github is not meant to be used that way

Sorry if I am mistaken. I did not understand your question properly, I never had issues uploading large files to github and later downloading them

launcher was made to download just a exactly copy of your files in GitHub, but for some reason it gets bug when the github file is a large file

please take a look maybe checking it out you will understand my problem
https://www.mediafire.com/?79eo5j5lr17kqqp

here's my config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="LauncherWPFOTC.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<userSettings>
<LauncherWPFOTC.Properties.Settings>
<setting name="gitRepositorio" serializeAs="String">
<value>https://github.com/josegvb/NewTES.git</value>
</setting>
<setting name="Nome" serializeAs="String">
<value>PokeTES</value>
</setting>
<setting name="Email" serializeAs="String">
<value>[email protected]</value>
</setting>
<setting name="OTClient" serializeAs="String">
<value>True</value>
</setting>
<setting name="NomeOT" serializeAs="String">
<value>Pokemon TES</value>
</setting>
<setting name="urlNoticia" serializeAs="String">
<value>http://www.google.com.ve</value>
</setting>
<setting name="Background" serializeAs="String">
<value>background.jpg</value>
</setting>
<setting name="BtnFechar" serializeAs="String">
<value>close.png</value>
</setting>
<setting name="BtnMinimizar" serializeAs="String">
<value>minimize.png</value>
</setting>
</LauncherWPFOTC.Properties.Settings>
</userSettings>
</configuration>
 
Well I cant download that I am on mobile. Is the downloader accesing the RAW file of the github?
 
Well I cant download that I am on mobile. Is the downloader accesing the RAW file of the github?

not a quite idea, i think it doesn't and that's why it downloads it as 1 kb file, also the downloader (launcher) it's sources wasn't posted so i guess it cannot be changed, what must be change is the spr x.x finding a way to break it in parts and making them "regroup" after downloaded
 
Well if you dont have the updater launcher I doubt theres something you can change.

The problem may be not getting the file as raw from guthub yeah.
 
It seems to be cloning the repo so there dhould be no issue... I cant compile it im on linux sorry
 
It seems to be cloning the repo so there dhould be no issue... I cant compile it im on linux sorry

exactly, it just copies ur github as it is but idk... it bugs with the SPR and downloads a 1 kb file instead of the spr
 
Sorry cant help you no idea how that uodater works. the one i sell doesnt work like that :S

Never saw an updater gathering from github either since its a development env
 
Last edited:
Sorry cant help you no idea how that uodater works. the one i sell doesnt work like that :S

Never saw an updater gathering from github either since its a development env

i guess ur updater must be like all of those which you must have a pc as hoster then add anything u gonna change with the 1.0, 1.1, 1.2, 1.3... etc? all of them work like that, the awesome thing about this is that it only replaces the archive u edited and no host required, just upload on github...

i've tried many of the launchers i mentioned before, generaly always get stuck with the spr saying its too big for the process to continue after downloading 100% etc lol hate them

also please let me know what's the price of that
 
Last edited:
i didn't check the source of the launcher but otclient use PhysFS which support archive files
all you have to do is just add the archive to the search path
Code:
g_resources.addSearchPath(g_resources.getWorkDir() .. "spr.zip", true)
 
i didn't check the source of the launcher but otclient use PhysFS which support archive files
all you have to do is just add the archive to the search path
Code:
g_resources.addSearchPath(g_resources.getWorkDir() .. "spr.zip", true)

thanks, that would be a temporal solution as the SPR in zip is 70 mb... tried myself but didn't get it to work, could you do that for me please? thanks in advance
game things.lua
filename = nil
loaded = false

function init()
connect(g_game, { onProtocolVersionChange = load })
end

function terminate()
disconnect(g_game, { onProtocolVersionChange = load })
end

function setFileName(name)
filename = name
end

function isLoaded()
return loaded
end

function load()

g_game.enableFeature(GameSpritesAlphaChannel)
local version = g_game.getClientVersion()

--g_game.enableFeature(GameSpritesAlphaChannel)
g_game.enableFeature(GameDiagonalAnimatedText)
g_game.enableFeature(GameMagicEffectU16)
g_game.enableFeature(GameSpritesU32)
setFileName('things')

local datPath, sprPath
if filename then
datPath = resolvepath('/things/' .. filename)
sprPath = resolvepath('/things/' .. filename)
else
datPath = resolvepath('/things/' .. version .. '/Tibia')
sprPath = resolvepath('/things/' .. version .. '/Tibia')
end

local errorMessage = ''
if not g_things.loadDat(datPath) then
errorMessage = errorMessage .. tr("Unable to load dat file, please place a valid dat in '%s'", datPath) .. '\n'
end
if not g_sprites.loadSpr(sprPath) then
errorMessage = errorMessage .. tr("Unable to load spr file, please place a valid spr in '%s'", sprPath)
end

loaded = (errorMessage:len() == 0)

if errorMessage:len() > 0 then
local messageBox = displayErrorBox(tr('Error'), errorMessage)
addEvent(function() messageBox:raise() messageBox:focus() end)

disconnect(g_game, { onProtocolVersionChange = load })
g_game.setProtocolVersion(0)
connect(g_game, { onProtocolVersionChange = load })
end
end

init.lua
-- this is the first file executed when the application starts
-- we have to load the first modules form here

-- setup logger
g_logger.setLogFile(g_resources.getWorkDir() .. g_app.getCompactName() .. '.log')
g_logger.info(os.date('== application started at %b %d %Y %X'))

-- print first terminal message
g_logger.info(g_app.getName() .. ' ' .. g_app.getVersion() .. ' rev ' .. g_app.getBuildRevision() .. ' (' .. g_app.getBuildCommit() .. ') built on ' .. g_app.getBuildDate() .. ' for arch ' .. g_app.getBuildArch())

-- add data directory to the search path
if not g_resources.addSearchPath(g_resources.getWorkDir() .. 'data', true) then
g_logger.fatal('Unable to add data directory to the search path.')
end

-- add modules directory to the search path
if not g_resources.addSearchPath(g_resources.getWorkDir() .. 'modules', true) then
g_logger.fatal('Unable to add modules directory to the search path.')
end

-- try to add mods path too
g_resources.addSearchPath(g_resources.getWorkDir() .. 'mods', true)

-- setup directory for saving configurations
g_resources.setupUserWriteDir(g_app.getCompactName())

-- search all packages
g_resources.searchAndAddPackages('/', '.otpkg', true)

-- load settings
g_configs.loadSettings('/config.otml')

g_modules.discoverModules()

-- libraries modules 0-99
g_modules.autoLoadModules(99)
g_modules.ensureModuleLoaded('corelib')
g_modules.ensureModuleLoaded('gamelib')

-- client modules 100-499
g_modules.autoLoadModules(499)
g_modules.ensureModuleLoaded('client')

-- game modules 500-999
g_modules.autoLoadModules(999)
g_modules.ensureModuleLoaded('game_interface')

-- mods 1000-9999
g_modules.autoLoadModules(9999)

local script = '/' .. g_app.getCompactName() .. 'rc.lua'

if g_resources.fileExists(script) then
dofile(script)
end
 
Last edited:
Code:
-- this is the first file executed when the application starts
-- we have to load the first modules form here

-- setup logger
g_logger.setLogFile(g_resources.getWorkDir() .. g_app.getCompactName() .. '.log')
g_logger.info(os.date('== application started at %b %d %Y %X'))

-- print first terminal message
g_logger.info(g_app.getName() .. ' ' .. g_app.getVersion() .. ' rev ' .. g_app.getBuildRevision() .. ' (' .. g_app.getBuildCommit() .. ') built on ' .. g_app.getBuildDate() .. ' for arch ' .. g_app.getBuildArch())

-- add data directory to the search path
if not g_resources.addSearchPath(g_resources.getWorkDir() .. 'data', true) then
g_logger.fatal('Unable to add data directory to the search path.')
end

-- add modules directory to the search path
if not g_resources.addSearchPath(g_resources.getWorkDir() .. 'modules', true) then
g_logger.fatal('Unable to add modules directory to the search path.')
end
-- add spr directory to the search path
if not g_resources.addSearchPath(g_resources.getWorkDir() .. 'data/things/1099/spr.zip', true) then
g_logger.fatal('Unable to add spr directory to the search path.')
end
-- try to add mods path too
g_resources.addSearchPath(g_resources.getWorkDir() .. 'mods', true)

-- setup directory for saving configurations
g_resources.setupUserWriteDir(g_app.getCompactName())

-- search all packages
g_resources.searchAndAddPackages('/', '.otpkg', true)

-- load settings
g_configs.loadSettings('/config.otml')

g_modules.discoverModules()

-- libraries modules 0-99
g_modules.autoLoadModules(99)
g_modules.ensureModuleLoaded('corelib')
g_modules.ensureModuleLoaded('gamelib')

-- client modules 100-499
g_modules.autoLoadModules(499)
g_modules.ensureModuleLoaded('client')

-- game modules 500-999
g_modules.autoLoadModules(999)
g_modules.ensureModuleLoaded('game_interface')

-- mods 1000-9999
g_modules.autoLoadModules(9999)

local script = '/' .. g_app.getCompactName() .. 'rc.lua'

if g_resources.fileExists(script) then
dofile(script)
end
Code:
filename = nil
loaded = false

function init()
connect(g_game, { onProtocolVersionChange = load })
end

function terminate()
disconnect(g_game, { onProtocolVersionChange = load })
end

function setFileName(name)
filename = name
end

function isLoaded()
return loaded
end

function load()

g_game.enableFeature(GameSpritesAlphaChannel)
local version = g_game.getClientVersion()

--g_game.enableFeature(GameSpritesAlphaChannel)
g_game.enableFeature(GameDiagonalAnimatedText)
g_game.enableFeature(GameMagicEffectU16)
g_game.enableFeature(GameSpritesU32)
setFileName('things')

local datPath, sprPath
if filename then
datPath = resolvepath('/things/' .. filename)
sprPath = resolvepath('Tibia')
else
datPath = resolvepath('/things/' .. version .. '/Tibia')
sprPath = resolvepath('Tibia')
end

local errorMessage = ''
if not g_things.loadDat(datPath) then
errorMessage = errorMessage .. tr("Unable to load dat file, please place a valid dat in '%s'", datPath) .. '\n'
end
if not g_sprites.loadSpr(sprPath) then
errorMessage = errorMessage .. tr("Unable to load spr file, please place a valid spr in '%s'", sprPath)
end

loaded = (errorMessage:len() == 0)

if errorMessage:len() > 0 then
local messageBox = displayErrorBox(tr('Error'), errorMessage)
addEvent(function() messageBox:raise() messageBox:focus() end)

disconnect(g_game, { onProtocolVersionChange = load })
g_game.setProtocolVersion(0)
connect(g_game, { onProtocolVersionChange = load })
end
end
make sure the spr file name is Tibia.spr and it's directly in the archive file not in a sub folder
also 7zip should compress 200mb spr file to less than 50 mb
http://www.7-zip.org/
 
Last edited:
Back
Top