avatar_Mr.Kernighan

Открытие сервера на JAVA для MU online разработки: оптимизация трудностей

Автор Mr.Kernighan, 2019 Июль 01, 11:12

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Ключевые слова [SEO] mu onlineсерверразработкаjavaоткрытиепроцесс

Mr.Kernighan

Всем привет, на меня напала ностальгия до такой степени что я решил открыть свой сервер, но желание поддерживать исходники написанные на C++ особо нет, поэтому я решил попробовать портировать все это дело на JAVA и сделать проект с открытым исходным кодом. Я очень давно не занимался разработкой для MU, многое подзабылось уже и поэтому я посчитал что Connect Server будет отличной отправной точкой, для того чтобы вспомнить как все работает и построить базовую архитектуру.


ВАЖНО! Установите JRE или JDK 8-ой версии, как это сделать перейдите по ссылке How do I install Java?


Connect Server: Version 1.0


Как запустить Connect Server?
  • Открыть CMD или терминал если вы linux пользователь
  • java -Xms1024m -Xmx2048m -jar /path/connectserver-1.0.jar --path /path/startup.json

Так же я буду премного благодарен тем людям, кто поможет с тестированием на разных версиях для того чтобы исправить различные проблемы.

Join Server: Работаемс..


startup.json

{
"logging": {
"level": "INFO",
"appenders": [{
"name": "Stdout",
"type": "CONSOLE",
"format": "%d{DEFAULT} [%t] %-5level %logger{36} - %msg%n"
}, {
"name": "RollingFile",
"type": "ROLLING_FILE",
"format": "%d{DEFAULT} [%t] %-5level %logger{36} - %msg%n",
"fileName": "connect-server.log",
"filePattern": "connect-server-%i.log",
"sizeBasedTriggeringPolicy": {
"size": "10M"
}
}]
},
"connectServer": {
"tcpPort": 44405,
"udpPort": 55557,
"serverList": [{
"serverCode": 0,
"serverName": "GameServer",
"serverAddress": "127.0.0.1",
"serverPort": 55901,
"serverType": "VISIBLE"
},
{
"serverCode": 19,
"serverName": "GameServerCS",
"serverAddress": "127.0.0.1",
"serverPort": 55919,
"serverType": "HIDDEN"
}
]
}
}



Исходники: GitHub

Crazzy-

#1
Интересный выбор языка) но я к примеру не фанат)



Эхх опять думал чтото интересное, но нет) после увиденного с цыферками, может показаться, что опять какойто школьник решил чтото "заговнокодить"  Советую логические енамчики завести. Ах да jAVA не любит енамы, тогда просто константы)

PS: в оригинальном коде у вз они были как define, просто после декомпиля DeathWay забыл обозвать их))) так и прижились)

Profesor08

#2
Цитата: Mr.Kernighan от 2019 Июль 01, 09:12  поэтому я решил попробовать портировать все это дело на JAVA

Mr.Kernighan

Согласен, но это пока сырая версия, все некрасивые моменты буду пересматривать и что-то менять, сейчас больше интересует что-то конкретно рабочее, чтобы люди могли уже использовать и тестировать.
Но все равно, спасибо за какие-то советы, буду принимать к сведению.

Crazzy-

Цитата: Mr.Kernighan от 2019 Июль 01, 19:34  Согласен, но это пока сырая версия, все некрасивые моменты буду пересматривать и что-то менять, сейчас больше интересует что-то конкретно рабочее, чтобы люди могли уже использовать и тестировать.
Но все равно, спасибо за какие-то советы, буду принимать к сведению.
мы ж программисты всегда так говорим, а потом забиваем) я вот линты настроил себе таким образом, что оно просто не скомпилит если такое заметит ) помогает не говнокодить)

Killbrum

Вот кстати да. Еще не дочитал, но Максу плюсую дико. 5ый год пишу ГС. Ну как пишу... есть настроение то пишу. Нет то сорри. Меня в ГСе дико бесит всякие 0xC4 или там 0xFF и все остальное гофно . Оно очень слабо читается. У себя в коде везде использую enum class. Всегда вижу что с чем сравнивается и что к чему относится.

Вообще да. Изначально "мушность" меня долго долбило. С одной стороны хочется новое с другой вроде привык к старому. В итоге закрыл глаза и пустил все под нож. Единственное что плохо потом синхронизировать код с другими проектами


SmallHabit

Верните мне мой 2008!!! Сууки!  

Killbrum

я еще масла в огонь подолью

уже больше чем пол года тихонько себе пишу и античит и КС и ГС. Коммитов так 300-400 думаю есть

Crazzy-

может тоже побаловаться))) а то уже лет так 5 на сях не писал)

Killbrum

Так вот делайте дрим тим  Уже сколько людей собралось?

SmallHabit

Хахах, я начал делать ГС на микросервисах, пока мало что есть, но зато есть возможность запустить сервер даже на распберри пай

Crazzy-

Цитата: SmallHabit от 2019 Июль 03, 14:24  Хахах, я начал делать ГС на микросервисах, пока мало что есть, но зато есть возможность запустить сервер даже на распберри пай :trollface:
а я вообще ни начем кроме swift'a не хочу писать) и смотрю есть возможно сбилдить свифт на винду и линукс помимо мака) а так можно и гс для айфона запилить  :lol:

Killbrum

Цитата: SmallHabit от 2019 Июль 03, 10:24  Хахах, я начал делать ГС на микросервисах, пока мало что есть, но зато есть возможность запустить сервер даже на распберри пай :trollface:
давай на питоне, потом поставим интерпретатор на esp32 и запустим там. Как раз будет по параметрам как пень 3

Profesor08

#13
А давайте на JS, будет работать где угодно, хоть в браузере запускай.

dizzy

#14
а возможно сделать гс хотя бы классику? (js)
и что бы был открыт код, что бы не было (ХЕШТЕГИ) дедика) и гибрида
вы же можете 97i сделать по факту

Profesor08

Ну сможешь на хероку запустить))) Веб сокеты есть в js, надо будет только сделать прослойку на клиенте, чтоб он мог их понимать.

dizzy

Цитата: Profesor08 от 2019 Июль 07, 16:18  Ну сможешь на хероку запустить))) Веб сокеты есть в js, надо будет только сделать прослойку на клиенте, чтоб он мог их понимать.

я по факту спросил

Killbrum

Так а смысл от такого? Чисто гипотетически да. Но смысла даже в му под линуксом уже нет. Если написав файлы человек сможет получить тысяч 5 онлайна то окей, интересно. Но по факту после долгих стараний выхлоп будет примерно на 100. От силы 200. Оно себя не окупит

Mr.Kernighan

ЦитироватьТак а смысл от такого? Чисто гипотетически да. Но смысла даже в му под линуксом уже нет. Если написав файлы человек сможет получить тысяч 5 онлайна то окей, интересно. Но по факту после долгих стараний выхлоп будет примерно на 100. От силы 200. Оно себя не окупит
Лично я, не преследую выгоду из всего этого, в противном случае сделал бы проект закрытым. Мне просто стало интересно что из этого может получится.

Crazzy-

Цитата: Mr.Kernighan от 2019 Июль 08, 14:21  Лично я, не преследую выгоду из всего этого, в противном случае сделал бы проект закрытым. Мне просто стало интересно что из этого может получится.
были б плюсы) я б подтянулся может пару коммитов бы послал)

Похожие темы (5)

Сообщений: 37
Просмотров: 22906

Сообщений: 127
Просмотров: 40337

Сообщений: 32
Просмотров: 13851