igroglaz / srvmgr

https://rom2.ru
8 stars 5 forks source link

stat point's drop after entering low tier map (misclick or forced due death-exp-drop) #129

Closed igroglaz closed 2 years ago

igroglaz commented 2 years ago

[07:40] electro: -140к только из за того что сбивают навык ниже 25 и меняется карта, только вот не пойму вроде говорили что все починили и наладили но все равно есть тупой заплет причём в самом начале игры

проблема в том, что реализована возможность заходить на лоу-лвл мапы с высоким навыком (по я эт отключил пока). но нет реализации заходить на хай-лвл мапы с низким навыком [12:13] igroglaz: в итоге если я сделаю "предохранитель", чтобы нельзя было зайти на мапу низкого лвл с полностью пропитыми статами - возможна ситуация, что чар попадет в "лимб": у тебя 26 навык и полностью пропиты статы. ты умер, навык стал 25. теперь ты не можешь попать на средку. но и на легкую ты не можешь попасть, т.к. у тебя полностью пропиты статы. [12:14] igroglaz: в принципе, я могу сделать "проверку" такую: если опыта меньше определенного количества - "предохранитель" не работает. тогда при 25 стата ты по крайней мере сможешь чара нульнуть в плане статов и продолжить играть, а не застрять навсегда в лимбе [12:15] igroglaz: но это получается защита от миссклика, но не решает проблему сброса статов в полной мере [12:15] igroglaz: т.е. ситуация которая сейчас произошла с электро - все также бы произошла даже с "проверкой" [12:19] igroglaz: решения: [12:19] igroglaz: 1) если чар получил пороговое значение навыка (типа 26) - то меньше него он уже не может его сбросить, даже если умрет. для этого надо встроить проверку на сервер на штраф опыта при смерти на конкретном сервере (т.е. на средке меньше 26 не будет, на слоге меньше 50 и тд) [12:20] igroglaz: 2) разрешить входить на любой сервер с любым навыком. надо искать это место (макс порог) в асме; оно где-т рядом с минимальным порогом. в клиенте оно найдено уже, чтобы анлокнуть при выборе сервера поле для клика

igroglaz commented 2 years ago

some useful tips: server: https://github.com/igroglaz/srvmgr/commit/3810acd96fa7a30041f2846aee1ca2d475608f95 client: https://github.com/igroglaz/a2mgr/commit/1b16381884c20c915170e7d227de64371a95f2a0

igroglaz commented 2 years ago

"предохранитель" (fuse) - already implemented: https://github.com/igroglaz/redhat/commit/a2a3b7b2d05ecc0e172677839fc7ff5efe765b62

igroglaz commented 2 years ago

https://github.com/igroglaz/srvmgr/commit/eeed5483753fc16a4b98f4d9cfa4acefa5087ca4