Skip to content

Commit

Permalink
Updated README.md
Browse files Browse the repository at this point in the history
Added more log messages for Linux x86 build and Coverity upload
workflow.
  • Loading branch information
cbnolok committed Jun 26, 2024
1 parent 6e7ea8f commit 147dda9
Show file tree
Hide file tree
Showing 8 changed files with 69 additions and 43 deletions.
25 changes: 19 additions & 6 deletions .github/workflows/build_linux_x86.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build Nightly Linux x86
name: Build Linux x86

on:
- push
Expand Down Expand Up @@ -31,27 +31,40 @@ jobs:
echo && echo "Install MariaDB dependencies"
echo "Installing some deps with apt..."
sudo apt install -yqq --no-install-recommends libc6:i386 libgcc-s1:i386 zlib1g:i386
echo "Installing libssl1.1 manually from Bionic repo..."
wget --quiet --output-document=dep1.deb http://launchpadlibrarian.net/367327733/libssl1.1_1.1.0g-2ubuntu4_i386.deb
sudo dpkg -r --force-all libssl1.1 2> /dev/null
sudo dpkg -i --force-all dep1.deb 2> /dev/null
sudo dpkg -r --force-all libssl1.1
sudo dpkg -i --force-all dep1.deb
#sudo apt install --fix-broken ./dep1.deb
echo "Done"
# Workaround: there are no official packages built for i386 on this OS. Let's install from previous Ubuntu LTS versions repo.
echo "Installing MariaDB i386 manually from Bionic repo..."
echo "Downloading MariaDB i386 manually from Bionic repo..."
wget --quiet --output-document=temp1.deb http://launchpadlibrarian.net/355877539/libmariadb3_3.0.3-1build1_i386.deb
wget --quiet --output-document=temp2.deb http://launchpadlibrarian.net/355877538/libmariadb-dev_3.0.3-1build1_i386.deb
#echo "Installing MariaDB i386 manually from Focal repo..."
#echo "Downloading MariaDB i386 manually from Focal repo..."
#wget --quiet --output-document=temp1.deb http://launchpadlibrarian.net/448491536/libmariadb3_10.3.18-1_i386.deb
# No libmariadb-dev ?
#wget --quiet --output-document=temp2.deb http://launchpadlibrarian.net/355877538/libmariadb-dev_3.0.3-1build1_i386.deb
# Third choice: directly download and install packages from Debian repos?
echo "Packets to be installed by libmariadb3:"
dpkg-deb -c temp1.deb
echo "Installing via dpkg libmariadb3"
sudo dpkg -i temp1.deb
echo "Done"
echo "Packets to be installed by libmariadb-dev:"
dpkg-deb -c temp2.deb
echo "Installing via dpkg libmariadb-dev"
sudo dpkg -i temp2.deb
sudo dpkg -i temp1.deb temp2.deb 2> /dev/null
echo "List lib directory files where MariaDB is supposed to be installed:"
ls /usr/lib/i386-linux-gnu/libmaria*
ls /usr/lib/i386-linux-gnu/mariadb
echo "Done"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build_linux_x86_64.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build Nightly Linux x86_64
name: Build Linux x86_64

on:
- push
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build_osx_x86_64.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build Nightly MacOS x86_64
name: Build MacOS x86_64

on:
- push
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build_win_x86.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build Nightly Windows x86
name: Build Windows x86

on:
- push
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build_win_x86_64.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build Nightly Windows x86_64
name: Build Windows x86_64

on:
- push
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/coverity-scan.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,9 @@ jobs:
run: |
cd build
../cov-analysis-linux64/bin/cov-build --dir ./cov-int make
echo "Printing last lines of cov-int/build-log.txt:"
tail cov-int/build-log.txt
pwd
#- name: Coverity scm log
# run: |
Expand All @@ -67,6 +69,7 @@ jobs:

- name: Submit the result to Coverity Scan
run: |
pwd
tar czvf build-data.tgz cov-int
curl \
--form project=SphereServer/Source-X \
Expand Down
74 changes: 42 additions & 32 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,61 +1,66 @@
# SphereServer X

Ultima Online game server, developed in C++.
<br>
[![GitHub license](https://img.shields.io/github/license/Sphereserver/Source-X?color=blue)](https://github.com/Sphereserver/Source-X/blob/master/LICENSE)
[![GitHub repo size](https://img.shields.io/github/repo-size/Sphereserver/Source-X.svg)](https://github.com/Sphereserver/Source-X/)
[![GitHub stars](https://img.shields.io/github/stars/Sphereserver/Source-X?logo=github)](https://github.com/Sphereserver/Source-X/stargazers)
<br>
[![GitHub issues](https://img.shields.io/github/issues/Sphereserver/Source-X.svg)](https://github.com/Sphereserver/Source-X/issues)
[![GitHub last commit](https://img.shields.io/github/last-commit/Sphereserver/Source-X.svg)](https://github.com/Sphereserver/Source-X/)
<br><br>
[![GitHub License](https://img.shields.io/github/license/Sphereserver/Source-X?color=blue)](https://github.com/Sphereserver/Source-X/blob/master/LICENSE)
&nbsp; &nbsp; [![GitHub Repo size](https://img.shields.io/github/repo-size/Sphereserver/Source-X.svg)](https://github.com/Sphereserver/Source-X/)
&nbsp; &nbsp; [![GitHub Stars](https://img.shields.io/github/stars/Sphereserver/Source-X?logo=github)](https://github.com/Sphereserver/Source-X/stargazers)
<br>
[![Coverity Scan Build Status](https://scan.coverity.com/projects/20225/badge.svg)](https://scan.coverity.com/projects/sphereserver-source-x)
<br>
[![Build status: Windows x86_64](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86_64.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86_64.yml)
[![Build status: Windows x86](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86.yml)
[![Build status: Linux x86_64](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86_64.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86_64.yml)
[![Build status: Linux x86](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86.yml)
[![Build status: MacOS x86_64](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_x86_64.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_x86_64.yml)
[![Build status: MacOS ARM](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_arm.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_arm.yml)
<br><br>
Join the SphereServer Discord channel!
[![Discord Shield](https://discordapp.com/api/guilds/354358315373035542/widget.png?style=shield)](https://discord.gg/ZrMTXrs)
&nbsp; &nbsp; [![GitHub Issues](https://img.shields.io/github/issues/Sphereserver/Source-X.svg)](https://github.com/Sphereserver/Source-X/issues)
| Join the SphereServer Discord channel! |
| :---: |
| [![Discord Shield](https://discordapp.com/api/guilds/354358315373035542/widget.png?style=shield)](https://discord.gg/ZrMTXrs) |

## Releases

### **Core**

### Download automated SphereServer builds and ScriptPack releases
| Branch: Master <br> (most stable pre-releases) | Branch: Dev <br> (most recent, potentially unstable) |
| :--- | :--- |
| [![GitHub last commit on Master branch](https://img.shields.io/github/last-commit/Sphereserver/Source-X/master.svg)](https://github.com/Sphereserver/Source-X/) &nbsp; <a href="https://github.com/Sphereserver/Source-X/blob/master/Changelog.txt">Changelog</a> | [![GitHub last commit on Dev branch](https://img.shields.io/github/last-commit/Sphereserver/Source-X/dev.svg)](https://github.com/Sphereserver/Source-X/tree/dev) &nbsp; <a href="https://github.com/Sphereserver/Source-X/blob/dev/Changelog.txt">Changelog</a> |
| **Nightly builds:** | **Nightly builds:** |
| [![Build status: Windows x86_64](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86_64.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86_64.yml) | [![Build status: Windows x86_64](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86_64.yml/badge.svg?branch=dev)](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86_64.yml) |
| [![Build status: Windows x86](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86.yml) | [![Build status: Windows x86](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86.yml/badge.svg?branch=dev)](https://github.com/Sphereserver/Source-X/actions/workflows/build_win_x86.yml) |
| [![Build status: Linux x86_64](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86_64.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86_64.yml) | [![Build status: Linux x86_64](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86_64.yml/badge.svg?branch=dev)](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86_64.yml) |
| [![Build status: Linux x86](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86.yml) | [![Build status: Linux x86](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86.yml/badge.svg?branch=dev)](https://github.com/Sphereserver/Source-X/actions/workflows/build_linux_x86.yml) |
| [![Build status: MacOS x86_64](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_x86_64.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_x86_64.yml) | [![Build status: MacOS x86_64](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_x86_64.yml/badge.svg?branch=dev)](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_x86_64.yml) |
| [![Build status: MacOS ARM](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_arm.yml/badge.svg?branch=master)](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_arm.yml) | [![Build status: MacOS ARM](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_arm.yml/badge.svg?branch=dev)](https://github.com/Sphereserver/Source-X/actions/workflows/build_osx_arm.yml) |

**SphereServer:**
**Click the badges or follow the links:**

+ <a href="https://github.com/Sphereserver/Source-X/releases">Github Release</a>
+ <a href="https://github.com/Sphereserver/Source-X/releases">Github Nightly builds</a>
+ <a href="https://forum.spherecommunity.net/sshare.php?srt=4">SphereServer Website</a>
<br>

**ScriptPack:**
### **ScriptPack**

The official script pack is fully compatible with X new syntax, has all the new X features and preserves legacy/classic systems, which can be activated back in place
of the new ones.
It is currently being revamped to add original OSI features.
Beware, it's still not 100% complete!
<br>It is currently being revamped to add original OSI features.
<br>**Beware, it's still not 100% complete!**

+ <a href="https://github.com/Sphereserver/Scripts-X">Current (most updated)</a>
+ <a href="https://github.com/Sphereserver/Scripts-X/releases">Milestone releases</a>

### Resources
## Resources

+ <a href="https://wiki.spherecommunity.net/">Scripting guide</a>
+ <a href="https://www.sphereserver.net/">Official website</a>
+ <a href="https://forum.spherecommunity.net/sshare.php">ScriptShare</a>
+ <a href="https://www.sphereserver.net/">SphereCommunity website</a>

#### Coming from a different SphereServer version?
### Coming from a different SphereServer version?

+ From 0.56d? <a href="docs/Porting%20from%200.56%20to%20X.txt">Here</a> a list of major scripting changes!
+ From an older 0.55 or 0.56 version? <a href="docs/Porting%20from%200.55%20to%200.56.txt">This</a> might help resuming major changes until 0.56d.

## Why a fork?
## Why the fork?

This branch started in 2016 from a slow and radical rework of SphereServer 0.56d, while trying to preserve script compatibility with the starting branch.
Though, something has changed script-wise, so we suggest to take a look <a href="docs/Porting%20from%200.56%20to%20X.txt">here</a>.
Most notable changes (right now) are:

+ Bug fixes and heavy changing of some internal behaviours, with the aim to achieve truly better **speed** and **stability**;
+ Support for x86_64 (64 bits) architecture, Mac OSX and MinGW compiler for Windows;
+ Support for x86_64 (64 bits) and ARM architectures, Mac OSX builds, Clang and GCC Linux builds, MinGW compiler for Windows;
+ CMake is now the standard way to generate updated build and project files;
+ Switched from MySQL 5.x to MariaDB client;
+ Added (and still adding) comments to the code to make it more understandable;
Expand All @@ -67,10 +72,12 @@ Most notable changes (right now) are:
### Required libraries (Windows)

+ `libmariadb.dll` (MariaDB Client v10.*package), found in lib/bin/*cpu_architecture*/mariadb/libmariadb.dll
<br>

### Required libraries (Linux)

+ MariaDB Client library. Get it from the following sources.
<br>

#### From MariaDB website

Expand All @@ -84,6 +91,7 @@ Install MariaDB client: `sudo apt-get install mariadb-client` or `sudo apt-get i
#### CentOS - Red Hat Enterprise Linux - Fedora repositories

Then install MariaDB client via yum (CentOS or RH) or dnf (Fedora): `mariadb-connector-c`
<br>

### Required libraries (MacOS)

Expand Down Expand Up @@ -138,8 +146,10 @@ Building will require more packages than the ones needed to run Sphere.
##### Ubuntu and Debian

Install these additional packages:
++ `sudo apt-get install git cmake`<br>
++ MariaDB client: `sudo apt-get install libmariadb-dev` and `libmariadb3` or `mariadb-client` (depends on the OS version)

+ `sudo apt-get install git cmake`
+ MariaDB client: `sudo apt-get install libmariadb-dev` and `libmariadb3` or `mariadb-client` (depends on the OS version)

If you are on a 64 bits architecture but you want to compile (or execute) a 32 bits binary, you will need to
install MariaDB packages adding the postfix `:i386` to each package name.

Expand Down Expand Up @@ -228,7 +238,7 @@ if (fTrue)<br>

## Licensing

Copyright 2023 SphereServer development team.<br>
Copyright 2024 SphereServer development team.<br>

Licensed under the Apache License, Version 2.0 (the "License").<br>
You may not use any file of this project except in compliance with the License.<br>
Expand Down
2 changes: 1 addition & 1 deletion src/game/items/CItem.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1641,7 +1641,7 @@ bool CItem::MoveToCheck( const CPointMap & pt, CChar * pCharMover )

// Check if there's too many items on the same spot

if (g_Cfg.m_iMaxItemComplexity > 0)
//if (g_Cfg.m_iMaxItemComplexity > 0) // It might be wise to keep this always on.
{
uint iItemCount = 0;
const CItem * pItem = nullptr;
Expand Down

0 comments on commit 147dda9

Please sign in to comment.