GithubHelp home page GithubHelp logo

djnandinho26 / muemu Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yomalex/muemu

0.0 0.0 0.0 2.92 MB

C# MuOnline Server Implementation for support multiple client version now aims to Season 16 Kor

License: MIT License

C++ 1.50% C 0.23% C# 98.27%

muemu's Introduction

Discord Issues Commits Client Season 9

Mu Online Server Emulator C#

It is a version of the MU Online Server written in C # NetCore3.1 for compatibility on all platforms Now is listed to support:

  • Season 6 Korean
  • Season 9 English
  • Season 12 Korean
  • Season 16 Korean
  • Season 17 Korean

Servers included

This repository includes several projects where the code is distributed, additionally the distribution could be changed to improve efficiency

ConnectServer

Automatically detects the servers connected to it and depending on its configuration, shows or not in the list of servers that are linked to it

GameServer

He is the star of this project and in charge of managing all the features of the game. It connects to the ConnectServer and sends important information such as the IP, usage statistics and if it will be shown in the list of servers or not. This server automatically creates the structure of your Database, it works with MySql Server. It includes a list of commands that will grow over time.

Configuration file

The configuration comes in XML, in the server.xml file, generated automatically when the Server is opened.

<?xml version="1.0"?>
<Server xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Name>GameServer</Name>
  <Code>0</Code>
  <Show>1</Show>
  <Lang>es</Lang>
  <AutoRegister>true</AutoRegister>
  <Season>Season9Eng</Season>
  <Connection>
    <IP>127.0.0.1</IP>
    <Port>55901</Port>
    <ConnectServerIP>127.0.0.1</ConnectServerIP>
    <APIKey>2020110116</APIKey>
  </Connection>
  <Database>
    <DBIp>127.0.0.1</DBIp>
    <DataBase>MuOnline</DataBase>
    <BDUser>root</BDUser>
    <DBPassword>1234</DBPassword>
  </Database>
  <Client>
    <Version>10525</Version>
    <Serial>fughy683dfu7teqg</Serial>
    <CashShopVersion>512.2014.124</CashShopVersion>
  </Client>
  <GamePlay>
    <Experience>9000</Experience>
    <GoldExperience>0</GoldExperience>
    <Zen>10</Zen>
    <DropRate>60</DropRate>
    <MaxPartyLevelDifference>400</MaxPartyLevelDifference>
  </GamePlay>
  <Files>
    <Monsters>./Data/Monsters/Monster</Monsters>
	<MonsterSetBase>./Data/Monsters/MonsterSetBase</MonsterSetBase>
	<SelupanPatterns>./Data/Monsters/PatternSelupan.xml</SelupanPatterns>
	<MayaLeftHandPatterns>./Data/Monsters/PatternMayaLeftHand.xml</MayaLeftHandPatterns>
	<MayaRightHandPatterns>./Data/Monsters/PatternMayaRightHand.xml</MayaRightHandPatterns>
	<NightmarePatterns>./Data/Monsters/PatternNightmare.xml</NightmarePatterns>
    <MapServer>./Data/MapServer.xml</MapServer>
  </Files>

  <!-- Events -->
  <Event name="Sphere" active="1" rate="6">
    <Condition item="6214" itemLevel="0" mobMinLevel="1" mobMaxLevel="1000" map="Kantru2" />
	  <!--Sphere (Tetra)-->
    <Condition item="6217" itemLevel="0" mobMinLevel="136" mobMaxLevel="1000" map="InvalidMap" />
  </Event>
  <Event name="Acheron Spirit Map Fragment" active="1" rate="15">
    <Condition item="6801" itemLevel="0" mobMinLevel="1" mobMaxLevel="1000" map="InvalidMap" />
  </Event>
  <Event name="Kanturu" active="1" rate="5">
    <!--Gemstone-->
    <Condition item="7209" itemLevel="0" mobMinLevel="1" mobMaxLevel="1000" map="Kantru1" />
    <Condition item="7209" itemLevel="0" mobMinLevel="1" mobMaxLevel="1000" map="Kantru2" />
  </Event>
  <Event name="DarkHorse Spirit" active="1" rate="10">
    <Condition item="6687" itemLevel="0" mobMinLevel="60" mobMaxLevel="150" map="InvalidMap" />
  </Event>
	<Event name="DarkRaven Spirit" active="1" rate="10">
    <Condition item="6687" itemLevel="1" mobMinLevel="60" mobMaxLevel="150" map="InvalidMap" />
  </Event>
  <Event name="Sing of lord" active="1" rate="10">
    <Condition item="7189" itemLevel="3" mobMinLevel="95" mobMaxLevel="150" map="InvalidMap" />
  </Event>
  <Event name="Kalima" active="1" rate="10">
    <Condition item="7197" itemLevel="1" mobMinLevel="25" mobMaxLevel="46" map="InvalidMap" />
    <Condition item="7197" itemLevel="2" mobMinLevel="47" mobMaxLevel="65" map="InvalidMap" />
    <Condition item="7197" itemLevel="3" mobMinLevel="66" mobMaxLevel="77" map="InvalidMap" />
    <Condition item="7197" itemLevel="4" mobMinLevel="78" mobMaxLevel="83" map="InvalidMap" />
    <Condition item="7197" itemLevel="5" mobMinLevel="84" mobMaxLevel="91" map="InvalidMap" />
    <Condition item="7197" itemLevel="6" mobMinLevel="92" mobMaxLevel="113" map="InvalidMap" />
    <Condition item="7197" itemLevel="7" mobMinLevel="114" mobMaxLevel="150" map="InvalidMap" />
  </Event>
  <Event name="BoxOfRibbon" active="1" rate="10">
    <Condition item="6176" itemLevel="0" mobMinLevel="12" mobMaxLevel="49" map="InvalidMap" />
    <Condition item="6177" itemLevel="0" mobMinLevel="50" mobMaxLevel="69" map="InvalidMap" />
    <Condition item="6178" itemLevel="0" mobMinLevel="70" mobMaxLevel="1000" map="InvalidMap" />
  </Event>
  <Event name="Medals" active="1" rate="10">
    <Condition item="7179" itemLevel="5" mobMinLevel="0" mobMaxLevel="1000" map="Dugeon" />
    <Condition item="7179" itemLevel="5" mobMinLevel="0" mobMaxLevel="1000" map="Davias" />
    <Condition item="7179" itemLevel="6" mobMinLevel="0" mobMaxLevel="1000" map="LostTower" />
    <Condition item="7179" itemLevel="6" mobMinLevel="0" mobMaxLevel="1000" map="Atlans" />
    <Condition item="7179" itemLevel="6" mobMinLevel="0" mobMaxLevel="1000" map="Tarkan" />
  </Event>
	<!-- start every 15-feb for a week -->
  <Event name="Heart" active="1" rate="10" start="15/02/2021" duration="432000" repeat="Annually">
    <Condition item="7179" itemLevel="3" mobMinLevel="15" mobMaxLevel="1000" map="InvalidMap" />
    <Condition item="7180" itemLevel="1" mobMinLevel="0" mobMaxLevel="1000" map="InvalidMap" />
  </Event>
  <!--<Event name="HeartOfLove" active="1" rate="10">
    <Condition item="7179" itemLevel="3" mobMinLevel="15" mobMaxLevel="1000" map="InvalidMap" />
  </Event>
  <Event name="EventChip" active="1" rate="10">
    <Condition item="7179" itemLevel="7" mobMinLevel="0" mobMaxLevel="1000" map="InvalidMap" />
  </Event>-->
	<!-- NewYear start every 1-jan for a week -->
  <Event name="FireCracker" active="1" rate="10" start="1/01/2021" duration="432000" repeat="Annually">
    <Condition item="7179" itemLevel="2" mobMinLevel="17" mobMaxLevel="1000" map="InvalidMap" />
  </Event>
	<!-- Xmas start every 1-dic ends 31-dic -->
  <Event name="StarOfXMas" active="1" rate="10" start="1/12/2021" duration="2678400" repeat="Annually">
    <Condition item="7179" itemLevel="1" mobMinLevel="0" mobMaxLevel="1000" map="Davias" />
    <Condition item="7179" itemLevel="1" mobMinLevel="0" mobMaxLevel="1000" map="Raklion" />
    <Condition item="7179" itemLevel="1" mobMinLevel="0" mobMaxLevel="1000" map="Selupan" />
  </Event>
  <!-- Halloween start every 31-oct for a week and adds 50% of exp -->
  <Event name="Halloween" active="1" rate="10" start="31/10/2021" duration="432000" repeat="Annually" experienceAdd="0.5">
    <Condition item="7213" itemLevel="0" mobMinLevel="50" mobMaxLevel="1000" map="InvalidMap" />
  </Event>
</Server>

Commands

  1. db: Manages the database, allows to create, delete or update its structure. Subcommands:
- create: Create a structure in an empty db. (Example: db create)
- migrate: Update the structure of the db. (Example: db migrate)
- delete: Delete the db you are connected to. (Example: db delete)
  1. reload: takes care of reloading server configuration files. Subcommands:
 - shops: reload the stores. (Example: reload shops)
 - gates: reload the gate file. (Example: reload gates)
  1. set: cdevelopment command to modify internal variables. Subcommands:
- hp: change the HP of the player entering the command. Argument, hp. (Example: chat: set hp 100).
- zen: change the amount of zen of the player entering the command. Argument, zen. (Example: chat: set zen 99999).
  1. exit, quit, stop: they close the server.
  2. !<texto>: Global message.
  3. /<texto>: Typical MuOnline Commands:
- addstr: Add strength points. (Example: chat: /addstr 10)
- addagi: Add agility points. (Example: chat: /addagi 10)
- addvit: Add vitality points. (Example: chat: /addvit 10)
- addene: Add energy points. (Example: chat: /addene 10)
- addcmd: Add command points. (Example: chat: /addcmd 10)
- p: Post command (Example: chat: /p Text)

Operation files

It requires common files from MuOnline servers, it is designed to read Season 6 version files and others of our own design in XML, some files are automatically translated from .txt to .xml for better handling on the server.

muemu's People

Contributors

yomalex avatar djnandinho26 avatar dependabot[bot] avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.