раньше в RPG картах пользовались сохранением строки -save в файл
чтобы не перепечатывать с экрана строку, а просто открыть файл и скопировать оттуда строку для -load в следующей игре
другое дело, что для синхронизации данных строка -load вводилась только через чат вручную
и насколько я понимаю в 1.26 варе нет функции чтения строки из файла в переменную и Preloader() с этим не справляется (да, я знаю что она не была задумана для этого)
несколько вопросов:
  • как в 1.26 можно загрузить строку из txt файла в переменную?
  • видимо в новых dzApi, UjApi, JNapi, Reforged - там есть такие функции? какие функции и в каких версиях варкрафта?
  • какие есть карты с системой автолоада? (т.е. как раз которые умеют сами считывать txt файл без чата от игрока)
мне сказали такие карты умеют в лоад без чата:
Беглецы RPG(v.0.23h) - DungeonRunners(v.0.23h) - www.epicwar.com/maps/167885 - пока не могу дойти до лоада, чтобы проверить реализацию
Masin RPG Newborn v1.30 - www.epicwar.com/maps/324790 - вроде для 1.31
Preload инфо:
Reforged BlzSetAbilityTooltip - xgm.guru/p/wc3/preloadinref
`
ОЖИДАНИЕ РЕКЛАМЫ...
18
Событие, написания текста -load, виполняет код Preload().
Ты измени событие на Таймер прошло времени - 0 сек.
14
Borodach: Событие, написания текста -load, виполняет код Preload()
Preload() это -save в текстовик а вопрос про загрузку из текстовика
set s = (file.txt).contents
в 1.26 беглецах кста есть автозагрузка вот таким костыльным способом:
Открыть
function PreloadFiles takes nothing returns nothing

	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),1,7)
call SetPlayerTechMaxAllowed(Player(14),1,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),2,536871112)
call SetPlayerTechMaxAllowed(Player(14),2,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),3,536870922)
call SetPlayerTechMaxAllowed(Player(14),3,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),4,536870922)
call SetPlayerTechMaxAllowed(Player(14),4,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),5,536870922)
call SetPlayerTechMaxAllowed(Player(14),5,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),6,536870912)
call SetPlayerTechMaxAllowed(Player(14),6,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),7,536870912)
call SetPlayerTechMaxAllowed(Player(14),7,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),8,536870912)
call SetPlayerTechMaxAllowed(Player(14),8,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),9,536870912)
call SetPlayerTechMaxAllowed(Player(14),9,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),10,536870912)
call SetPlayerTechMaxAllowed(Player(14),10,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),11,536870912)
call SetPlayerTechMaxAllowed(Player(14),11,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),12,536870912)
call SetPlayerTechMaxAllowed(Player(14),12,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),13,536870912)
call SetPlayerTechMaxAllowed(Player(14),13,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),14,1747989043)
call SetPlayerTechMaxAllowed(Player(14),14,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),15,536870912)
call SetPlayerTechMaxAllowed(Player(14),15,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),16,536870912)
call SetPlayerTechMaxAllowed(Player(14),16,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),17,536870912)
call SetPlayerTechMaxAllowed(Player(14),17,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),18,536870912)
call SetPlayerTechMaxAllowed(Player(14),18,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),19,536870912)
call SetPlayerTechMaxAllowed(Player(14),19,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),20,536870912)
call SetPlayerTechMaxAllowed(Player(14),20,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),21,536870913)
call SetPlayerTechMaxAllowed(Player(14),21,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),22,536870912)
call SetPlayerTechMaxAllowed(Player(14),22,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),23,536870912)
call SetPlayerTechMaxAllowed(Player(14),23,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),24,536870912)
call SetPlayerTechMaxAllowed(Player(14),24,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),25,536870912)
call SetPlayerTechMaxAllowed(Player(14),25,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),26,536870912)
call SetPlayerTechMaxAllowed(Player(14),26,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),27,536870912)
call SetPlayerTechMaxAllowed(Player(14),27,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),28,536870912)
call SetPlayerTechMaxAllowed(Player(14),28,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),29,536870912)
call SetPlayerTechMaxAllowed(Player(14),29,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),30,536870912)
call SetPlayerTechMaxAllowed(Player(14),30,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),31,536870912)
call SetPlayerTechMaxAllowed(Player(14),31,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),32,536870912)
call SetPlayerTechMaxAllowed(Player(14),32,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),33,536870912)
call SetPlayerTechMaxAllowed(Player(14),33,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),34,536870912)
call SetPlayerTechMaxAllowed(Player(14),34,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),35,536870912)
call SetPlayerTechMaxAllowed(Player(14),35,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),36,536870912)
call SetPlayerTechMaxAllowed(Player(14),36,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),37,536870912)
call SetPlayerTechMaxAllowed(Player(14),37,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),38,536870912)
call SetPlayerTechMaxAllowed(Player(14),38,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),39,536870912)
call SetPlayerTechMaxAllowed(Player(14),39,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),40,536870912)
call SetPlayerTechMaxAllowed(Player(14),40,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),41,536870912)
call SetPlayerTechMaxAllowed(Player(14),41,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),42,536870912)
call SetPlayerTechMaxAllowed(Player(14),42,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),43,536870912)
call SetPlayerTechMaxAllowed(Player(14),43,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),44,536870912)
call SetPlayerTechMaxAllowed(Player(14),44,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),45,536870912)
call SetPlayerTechMaxAllowed(Player(14),45,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),46,536870912)
call SetPlayerTechMaxAllowed(Player(14),46,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),47,536870912)
call SetPlayerTechMaxAllowed(Player(14),47,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),48,536870912)
call SetPlayerTechMaxAllowed(Player(14),48,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),49,536870912)
call SetPlayerTechMaxAllowed(Player(14),49,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),50,536870912)
call SetPlayerTechMaxAllowed(Player(14),50,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),51,536870912)
call SetPlayerTechMaxAllowed(Player(14),51,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),52,1747989291)
call SetPlayerTechMaxAllowed(Player(14),52,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),53,340408704)
call SetPlayerTechMaxAllowed(Player(14),53,2)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),54,236648666)
call SetPlayerTechMaxAllowed(Player(14),54,2)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),55,1280082494)
call SetPlayerTechMaxAllowed(Player(14),55,2)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),56,536870924)
call SetPlayerTechMaxAllowed(Player(14),56,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),57,1012600931)
call SetPlayerTechMaxAllowed(Player(14),57,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),58,536870912)
call SetPlayerTechMaxAllowed(Player(14),58,1)
  //" )
	call Preload( "" )
call SetPlayerTechMaxAllowed(Player(15),59,536870922)
call SetPlayerTechMaxAllowed(Player(14),59,1)
  //" )
	call Preload( "" )
endfunction
function recyclebin takes nothing returns nothing
//" )
	call PreloadEnd( 0.0 )

endfunction


(сохранение появляется на базе после прохождения 1го уровня)
пока систему подробно не разбирал эту через исследования
Загруженные файлы
14
nazarpunk: Codeless Save and Load
вчера раз 10 пытался запустить и проверить работоспособность
Codeless Save Load v3.0.1 - карта не запускается на 1.26, не запускается на 1.28.5
Codeless Save Load v1.3.9 - на 1.26 не работают кнопки "Save Character" "Load Character" (при их нажатии ничего не происходит, ни загрузки ни текстовой лог надписи) , не работает -load <slot> , работает только -save <код> и -load <код> , но кодовая загрузка через чат это не по теме вопроса
Codeless Save Load v1.3.9 - на 1.28.5 заработали "Save Character" "Load Character", -load <slot> не работает, но вопрос был в основном про безкодовый -load 1.26, остальные версии так, до кучи в виде инфы
локал файлы конечно включены
и C:\!! AllowLocalFiles\AllowLocalFiles.bat.txt я тоже запускал
т.е. видимо вся эта система на 1.26 не работает
зато система из беглецов работает на 1.26 и даже в мультиплеере, что намного приоритетнее по разбору
в рефоргеде - вон вообще в тултип загружаются, там и разбирать особо нечего, т.к. оно работает
в 1.28.5 используют %USERPROFILE%\Documents\Warcraft III\CustomMapData
а вот найти систему для 1.26 - вот это задача
хотя Codeless Save Load v1.3.9 в 1.28.5 загружает код через string имя персонажа - такое должно работать и для 1.26, попробую
это должно быть проще чем работа с integer из примера выше про SetPlayerTechMaxAllowed
function PreloadFiles takes nothing returns nothing

	call Preload( "")
	call SetPlayerName(Player(0), " 0073Повелитель Зверей (Тагар Волк)|nFon8AfB0LaZUgCym")
//" )
	call Preload( "" )
endfunction
function AAA takes nothing returns nothing 
//" )
	call PreloadEnd( 0.0 )

endfunction
Загруженные файлы
18
SetPlayerTechMaxAllowed я так понимаю используется для загрузки чисел. А большинство данных используют число, из-за чего удобнее может быть

Есть готовая наработка
xgm.guru/p/wc3/data-manager ()
Чтобы оставить комментарий, пожалуйста, войдите на сайт.