Игровой форум / Разработка и развитие игры
9 Января 2017 23:48
MANSON [30]
API ПЯТЬ БУКВ НАДОЕЛИ ОШИБКИ ПРИ СОЗДАНИИ ТЕМЫ
Клиенты уже довольно долгое время разрешены, так почему бы не облегчить жизнь разработчикам и слегка разгрузить сервак?
Предлагаю сделать небольшое API по информации игрока.
Пример:
http://neolands.ru/api/playerIfno?id=<playerId>&fieldsCSV=<field1>,<field2>,...,<fieldN>
playerId - ID игрока либо его никнейм, как удобнее
fieldsCSV - список полей, которые нужно вернуть, к примеру
Пример запроса:
http://neolands.ru/api/playerIfno?id=4220&fieldsCSV=health,game_status,clan
Поля - все данные о персонаже (статы, хп, мп, травмы, трюм, локация, молчанка, надетые вещи, информация о клане, бафы,...)
Пример ответа (json):
{
"health":{
"current_hp":4013,
"max_hp":4013,
"current_mp":4013,
"max_mp":4013,
"injuries":[
{
"slot":"пояс",
"duration":100000
}
]
},
"game_status":{
"level":30,
"status":"online",
"location":[
"Мираклис",
"Центр города"
],
"battle":null,
"ban":{
"silence":null,
"jail":null,
"block":null
}
},
"clan":{
"name":"Покорители Небес",
"status":".!",
"id":"c38",
"tendency":"light",
"icon":"http://neolands.ru/image/clans/c38.gif"
}
}
ИМХО, формат вывода даных без разницы, для примера навел джсон.
Все необходимые данные уже есть на странице персонажа (http://neolands.ru/pinfo.php?MANSON), нужно лишь сформировать лаконичный ответ.
Задание можно еще больше упростить, оставив лишь одно поле: http://neolands.ru/api?id=4220 и возвращать все, что имеется.
Я не прошу никаких скрытых данных, лишь то, что уже возвращается, но в другом формате.
По сути, все, что нужно:
view-source:http://neolands.ru/pinfo.php?MANSON

var eq=["male_3.gif","MANSON",["w14_01.gif","Уникальные Паучьи Серьги|70|70||50||||||",5473680,2],["sl/sl_1.gif","Cлот для перчаток"],["sl/sl_2.gif","Cлот для оружия"],["sl/sl_3.gif","Cлот для брони"],["sw4.gif","Антимагия|2|2||||||||",13578268,0],["sw4.gif","Антимагия|2|2||||||||",12577309,0],["sl/sl_6.gif","Cлот для шлема"],["dr05.gif","Перстень Древних|500|500|7-10|250|189|||||",13468514,3],["dr05.gif","Перстень Древних|500|500|7-10|250|150|||||",12292819,3],["wa13_02.gif","Перстень Легкости|2015|2015||2000||||||",18719198,1],["w_12_14.gif","Кулон Пятилетия (2009)|1000|1000|12-14|768||||||",11028231,3],["sl/sl_11.gif","Cлот для наручей"],["sl/sl_2.gif","Cлот для оружия/щита"],["sl/sl_13.gif","Cлот для пояса"],["sl/sl_14.gif","Слот для сапог"],["sl/sl_15.gif","Cлот для кошелька"],["el_ad_sm.gif","Противоядие 30|14|30||||||||",8273591,0],["rune62.gif","Средняя Руна Магии|1|1||||||||",17292025,0],["sl/sl_16.gif","Cлот для эликсиров"],["sl/sl_16.gif","Cлот для эликсиров"],["sl/sl_3.gif","Cлот для кольчуги/доспеха"],""];
var inf=["8","30",130,158,122,60,25,5,255,428,498
MANSON 9 Января 2017 23:48
MANSON [30]
Не все влезло:

ИМХО, формат вывода даных без разницы, для примера навел джсон.
Все необходимые данные уже есть на странице персонажа (http://neolands.ru/pinfo.php?MANSON), нужно лишь сформировать лаконичный ответ.
Задание можно еще больше упростить, оставив лишь одно поле: http://neolands.ru/api?id=4220 и возвращать все, что имеется.
Я не прошу никаких скрытых данных, лишь то, что уже возвращается, но в другом формате.
По сути, все, что нужно:
view-source:http://neolands.ru/pinfo.php?MANSON

var eq=["male_3.gif","MANSON",["w14_01.gif","Уникальные Паучьи Серьги|70|70||50||||||",5473680,2],["sl/sl_1.gif","Cлот для перчаток"],["sl/sl_2.gif","Cлот для оружия"],["sl/sl_3.gif","Cлот для брони"],["sw4.gif","Антимагия|2|2||||||||",13578268,0],["sw4.gif","Антимагия|2|2||||||||",12577309,0],["sl/sl_6.gif","Cлот для шлема"],["dr05.gif","Перстень Древних|500|500|7-10|250|189|||||",13468514,3],["dr05.gif","Перстень Древних|500|500|7-10|250|150|||||",12292819,3],["wa13_02.gif","Перстень Легкости|2015|2015||2000||||||",18719198,1],["w_12_14.gif","Кулон Пятилетия (2009)|1000|1000|12-14|768||||||",11028231,3],["sl/sl_11.gif","Cлот для наручей"],["sl/sl_2.gif","Cлот для оружия/щита"],["sl/sl_13.gif","Cлот для пояса"],["sl/sl_14.gif","Слот для сапог"],["sl/sl_15.gif","Cлот для кошелька"],["el_ad_sm.gif","Противоядие 30|14|30||||||||",8273591,0],["rune62.gif","Средняя Руна Магии|1|1||||||||",17292025,0],["sl/sl_16.gif","Cлот для эликсиров"],["sl/sl_16.gif","Cлот для эликсиров"],["sl/sl_3.gif","Cлот для кольчуги/доспеха"],""];
var inf=["8","30",130,158,122,60,25,5,255,428,498,345,"26-34",0,"0","0","0","0",273736,2484,"Сергей","male","Украина","Черновцы","359962161","veroveraars.do.am","2009-11-06 14:23:42",0,0]

var $status = [1483993705,1483993535,"Мираклис","Центр города","",0,"до введения алхимии","0","1479968092"];
var plaff = {};
var plhp=[4013,4013,559,559];
var clan=['Покорители Небес','.!','1','c38'];


Плюсы:
- снизит нагрузку на сервак (меньший объем данных, которые передаются)
- облегчение жизни разработчиков клиентов
Минусы:
- Нужно потратить время на имплементацию этого добра
Smile 10 Января 2017 00:09
Smile [34]
Манька фигни не скажет.
Пут Сатанакия 10 Января 2017 14:43 Согласен,хоть мало что понял