Здравствуйте, гость ( Вход | Регистрация )

> Компиляция или не надо, Надо ли компилить ядро каждый раз как сделал изменения в Script
Chicos
сообщение 24.11.2017, 5:53
Сообщение #1


**

Neophyte
Сообщений: 21
Регистрация: 20.6.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 6.565



В руководстве по сборке компиляции сказано что надо добавить папку Server в проект и скомпилить ядро. От предшественика мне уже досталось готовое ядро. Почему то подумалось что просто изменив в папке Scripts нужный мне скрипт я получу нужное. Для пробы изменил в кастоме явно свой объект. Но изменения на сервере не отобразились. То есть после каждого изменения в Scripts необходимо пересобирать exe ? Или как то по другому? Начал только разбираться с UO, и что то в сотнях тем прочитанных этот момент не нашел.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
Juzzver
сообщение 25.11.2017, 15:18
Сообщение #2


**********

Модератор RunUO
Сообщений: 3.425
Регистрация: 1.11.2008
Группа: Супермодераторы
Наличность: 22558
Из: Северная Корея
Пользователь №: 11.273



Я лично не ощутил проблем с сериализациями при работе в обоих вариантах. Так или иначе, если есть проблемы, через консоль показывает характер ошибок связанных с загрузками.

А что касается общей компиляции и экономии времени - это реально удобнее, и когда работаешь над проектом годами, экономия на каждой компиляции тех же 20 секунд - дает огромное кпд (IMG:style_emoticons/default/smile.gif). Ну и плюс общий вывод в одном месте, не приходится расслаиваться.

Единственное на мой взгляд, чего стоит опасаться, из серии "неподготовленных рук", это когда начинают подключать пространство имён скриптов в сервере, и получается каша c поломанной ахритектурой и рядом зависимостей.

Если это шард Nova, то там так и сделано, объединение ядра со скриптами в одном проекте.


--------------------
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Aimed
сообщение 25.11.2017, 18:35
Сообщение #3


*********

Grandmaster
Сообщений: 2.250
Регистрация: 29.12.2012
Группа: Пользователи
Наличность: 8495
Пользователь №: 15.607



Цитата(Juzzver @ 25.11.2017, 13:18) *

Я лично не ощутил проблем с сериализациями при работе в обоих вариантах. Так или иначе, если есть проблемы, через консоль показывает характер ошибок связанных с загрузками.

А что касается общей компиляции и экономии времени - это реально удобнее, и когда работаешь над проектом годами, экономия на каждой компиляции тех же 20 секунд - дает огромное кпд (IMG:style_emoticons/default/smile.gif). Ну и плюс общий вывод в одном месте, не приходится расслаиваться.

Единственное на мой взгляд, чего стоит опасаться, из серии "неподготовленных рук", это когда начинают подключать пространство имён скриптов в сервере, и получается каша c поломанной ахритектурой и рядом зависимостей.

Если это шард Nova, то там так и сделано, объединение ядра со скриптами в одном проекте.


А что там случилось вобще? Потому что когда мне дали проект - там просто ужас что творилось, я так до сих пор все и не исправил. Особенно у меня подгорает от того как там реализован код с экспансиями и главное - никакой репозитории с кодом от прошлого владельца или какой-либо документации.
И когда я собрал все обратно в структуру сервера и скриптов, у меня он вобще перестал запускаться. Некоторые дома нехотели десереализироваться. А на старой версии никаких ошибок. В итоге там был баг в десерилазиции домов и на старой версии кода, что сейчас там работает, пропадали гильд стоуны, но сервер зато запускался. И там ошибок по сериализации/десерилазции вылезло у меня чтук 8 и ещё где-то с 50 варнингов.

Самое печальное что я поставил репо на битбакете, все свои правки коммитил туда, написал инструкции как пользоваться, как дебажить и соберать релиз, дал админу доступ, а он ТСу даже не сообщил об этом. Просто дал ему доступ на серверную машину через TeamViewer и все.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Juzzver
сообщение 26.11.2017, 1:02
Сообщение #4


**********

Модератор RunUO
Сообщений: 3.425
Регистрация: 1.11.2008
Группа: Супермодераторы
Наличность: 22558
Из: Северная Корея
Пользователь №: 11.273



Цитата(Aimed @ 25.11.2017, 19:35) *

А что там случилось вобще? Потому что когда мне дали проект - там просто ужас что творилось, я так до сих пор все и не исправил. Особенно у меня подгорает от того как там реализован код с экспансиями и главное - никакой репозитории с кодом от прошлого владельца или какой-либо документации.
И когда я собрал все обратно в структуру сервера и скриптов, у меня он вобще перестал запускаться. Некоторые дома нехотели десереализироваться. А на старой версии никаких ошибок. В итоге там был баг в десерилазиции домов и на старой версии кода, что сейчас там работает, пропадали гильд стоуны, но сервер зато запускался. И там ошибок по сериализации/десерилазции вылезло у меня чтук 8 и ещё где-то с 50 варнингов.

Самое печальное что я поставил репо на битбакете, все свои правки коммитил туда, написал инструкции как пользоваться, как дебажить и соберать релиз, дал админу доступ, а он ТСу даже не сообщил об этом. Просто дал ему доступ на серверную машину через TeamViewer и все.


Сам сервер был собран из оригинальных исходников Новы, где из всего что осталось - была только папка Scripts. Версия ядра и прочие вещи подбирались методами глубоких анализов по максимальному соответствию, если не ошибаюсь, примерно 147 свн версия была выбрана.
После чего уже шло восстановление сейвов Новы, на основе той же папки со скриптами, скриншотов и памяти игроков).
Качество кода, конечно оставляло желать лучшего... Но моя задача была запустить и донастроить сервер таким образом, каким он существовал в каком-то там году.

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

Потом сервер был перепродан владельцу, который вроде что-то шарил в программировании, но близко ничего не знал про сериализацию и делал очень негуманные вещи)). Потом перевел сервер, как я понял, на аос экспансию, т.к. были активированы тултипы и прочие элементы, которые возможно вовсе не были совместимы с тем концептом (исхожу из того, что по тому ТЗ, что мне описывали, там от аоса было крайне мало и отсутствие тултипов - это было основное требование).

Дальнейшим сервера я не интересовался, т.к. сменился владелец, и все мои учетки прибрал к себе новый владалец, включая игровых персов (IMG:style_emoticons/default/laugh.gif)

P.S> сервер я поддерживал примерно в районе полугода, вышеперечисленных проблем со стоунами, домами и сериализациями не встречались. Крашей и критических багов было много еще со старых исходников, но это всё исправлялось сразу по мере возникновения.

Цитата
Кстати, насчет 20 сек это тоже не совсем правда....

У меня на то время стоял Атлон, и для него это была сложная задача по времени. Куда быстрее было компилить всё целиком. И если не ошибаюсь студия использует свои наборы для компиляции, а не стандартный csc в соло, в результате чего разница ощущалось. Само ядро даже на Атлоне за пару сек компилилась.

А когда работал с серверами, где компиляция занимала порядка 5 мин, при этом еще и сейвы прогружались столько же, а тестить приходилось к примеру автотурнир, и ты открываешь по 5-6 окон, котоыре сжирают всё цп. В таких случаях у меня бы нервы сдали ждать еще пока ScriptCompiler сделает свою работу))

В общем на цвет и вкус наверное. Но на своем опыте мне было так удобно, и очень много проектов встречал в том же стиле.
Когда держал свои сервера на удаленке, мне достаточно было скинуть лишь один .exe файл, чтобы перенести все апдейты на мэйн сервер, это тоже был плюс. Ctrl+C -> Ctrl+V и готово (IMG:style_emoticons/default/smile.gif)

На линуксе компиляцию в один выход тоже проще было составить.

Сообщение отредактировал Juzzver - 26.11.2017, 1:06


--------------------
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Сообщений в этой теме
Chicos   Компиляция или не надо   24.11.2017, 5:53
Soteric   Ты понял верно. При запуске папка Scripts должна п...   24.11.2017, 6:04
Juzzver   Если ядро в проекте объединяет обе папки Server и...   24.11.2017, 15:19
Aimed   Ну вы и ответы даёте... я бы не зная сабжа нафиг з...   24.11.2017, 18:51
StaticZ   Да, если так уже сделали, то прийдется, но так дел...   24.11.2017, 19:05
Aimed   Как по мне при статичной компиляции куда проще и ...   24.11.2017, 19:10
StaticZ   А кто мешает отладчиком пользоваться то? Нужно про...   24.11.2017, 19:43
Aimed   Ну так эта и есть статическая компиляция о которо...   24.11.2017, 20:55
Chicos   Линк был на FAQ о дебаге ядра + скриптов при норм...   24.11.2017, 22:50
Aimed   Ну Аймед, так то то ты это и есть предшественик, ...   24.11.2017, 23:07
Aimed   Кстати, насчет 20 сек это тоже не совсем правда......   25.11.2017, 19:06
StaticZ   Кстати, насчет 20 сек это тоже не совсем правда.....   29.11.2017, 0:57
Aimed   Да нет все таки через студию быстрее, там идет ча...   29.11.2017, 19:17
StaticZ   Я что-то не в теме. О каких окнах речь?Я про окошк...   30.11.2017, 19:11
Juzzver   Столкнулся с неприятным моментом при использовании...   8.12.2017, 20:02
Aimed   Столкнулся с неприятным моментом при использовани...   9.12.2017, 19:03
Juzzver   Решил покопаться, в итоге получилось сделать чере...   1.2.2018, 21:13
Aimed   Надо будет ещё попробовать там msbuild/xbuild (if ...   2.2.2018, 13:35
volkinson   Ребята, а как сделать так, чтобы скрипты подгружал...   27.3.2019, 13:00
Juzzver   Глянул о чем речь - это нечто иное как конфиги, с ...   27.3.2019, 18:38
Aimed   С рефлексией большой гемор будет. Куча подводных к...   28.3.2019, 12:38
Juzzver   Еще как вариант, можно взять тот же форк UOForever...   28.3.2019, 19:33
Wap   С рефлексией большой гемор будет. Куча подводных ...   29.3.2019, 1:45
Aimed   В одно рыло в свободное от работы время - это год...   29.3.2019, 14:04
Alastar   Если только она магическая )) Ultima Offline Ex...   30.3.2019, 13:44
Alastar   Как вариант впилить javascript библиотеку в ядро и...   29.3.2019, 9:57
Ozzy Osbourne   Как вариант впилить javascript библиотеку в ядро и...   29.3.2019, 11:06
RL_ka   Зачем изобретать велосипеды, если для этих целей у...   29.3.2019, 14:21
Aimed   Зачем изобретать велосипеды, если для этих целей ...   29.3.2019, 14:32
Ozzy Osbourne   Ты действительно не понимаешь чем UOX3 отличается ...   30.3.2019, 17:56


Ответить в эту темуОткрыть новую тему
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 28.5.2024, 7:00
Designed by Nickostyle