<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Server Modification</title><link>https://sourceforge.net/p/hercules/wiki/Server%2520Modification/</link><description>Recent changes to Server Modification</description><atom:link href="https://sourceforge.net/p/hercules/wiki/Server%20Modification/feed" rel="self"/><language>en</language><lastBuildDate>Mon, 20 Feb 2023 05:03:19 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/hercules/wiki/Server%20Modification/feed" rel="self" type="application/rss+xml"/><item><title>Server Modification modified by Brynner</title><link>https://sourceforge.net/p/hercules/wiki/Server%2520Modification/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;{{outdated}}&lt;/p&gt;
&lt;p&gt;You can find here some information to start making server-side source&lt;br/&gt;
modifications.&lt;/p&gt;
&lt;div class="toc"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#how-hercules-works"&gt;How Hercules works&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#login-server"&gt;Login Server&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#char-server"&gt;Char-Server&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#map-server"&gt;Map-Server&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#source-modifications"&gt;Source Modifications&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#pre-made-modifications"&gt;Pre-Made Modifications&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2 id="how-hercules-works"&gt;How Hercules works&lt;/h2&gt;
&lt;p&gt;Hercules has a multi-process architecture. It runs three different processes:&lt;br/&gt;
&lt;strong&gt;login-server&lt;/strong&gt; , &lt;strong&gt;char-server&lt;/strong&gt; and &lt;strong&gt;map-server&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="login-server"&gt;Login Server&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Login server&lt;/strong&gt; &lt;strong&gt;:&lt;/strong&gt; receives the login packet, checks if account exists and&lt;br/&gt;
if the password is correct. If all is OK, the connection is then passed to the&lt;br/&gt;
&lt;strong&gt;char-server&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="char-server"&gt;Char-Server&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Char-server&lt;/strong&gt; &lt;strong&gt;:&lt;/strong&gt; controls all the character related, Guild, party, pet,&lt;br/&gt;
inventory etc.&lt;/p&gt;
&lt;h3 id="map-server"&gt;Map-Server&lt;/h3&gt;
&lt;p&gt;The last one is the &lt;strong&gt;map-server&lt;/strong&gt; , which controls char and NPC position,&lt;br/&gt;
chats, skills, exp etc.&lt;/p&gt;
&lt;h2 id="source-modifications"&gt;Source Modifications&lt;/h2&gt;
&lt;p&gt;Before you start modifying &lt;a class="alink" href="/p/hercules/wiki/Hercules/"&gt;[Hercules]&lt;/a&gt;, you should better take a look first&lt;br/&gt;
on &lt;span&gt;[:Category:Source_Functions]&lt;/span&gt;. Remember, it's necessary to &lt;a class="" href="../re%20
compile"&gt;Compiling&lt;/a&gt; &lt;a class="alink" href="/p/hercules/wiki/Hercules/"&gt;[Hercules]&lt;/a&gt; after a source modification. You can also find&lt;br/&gt;
information about &lt;a class="alink" href="/p/hercules/wiki/Packets/"&gt;[Packets]&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id="pre-made-modifications"&gt;Pre-Made Modifications&lt;/h3&gt;
&lt;p&gt;Also can take a look at modifications made by other users.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="" href="../Source%20Snippets"&gt;:Category:Source Snippets&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;span&gt;[Customizing Sheet]&lt;/span&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span&gt;[Category:Customization]&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brynner</dc:creator><pubDate>Mon, 20 Feb 2023 05:03:19 -0000</pubDate><guid>https://sourceforge.neta87a101b42f1f4812eff7472fdb8b135b5f65ff0</guid></item></channel></rss>