Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add blogs #115

Merged
merged 1,203 commits into from
Dec 13, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1203 commits
Select commit Hold shift + click to select a range
3a3d674
added some changes I missed from last merge
hexactinal Dec 5, 2023
c1e89c3
Added deserialization and comments
Dec 5, 2023
683afd3
A* fintness function
amantham20 Dec 5, 2023
708d601
Add SFML/networking to all unit test includes
FergusonAJ Dec 5, 2023
a5b9d67
Added potential way to update all clients
ZaneMODell Dec 5, 2023
db74e3b
smol
ZaneMODell Dec 5, 2023
1bd2df8
Merge pull request #105 from FergusonAJ/main
FergusonAJ Dec 6, 2023
f76ebfd
Fix data README and interaction graphing
dradcl Dec 6, 2023
eeb18d7
Merge remote-tracking branch 'upstream/development' into development
dradcl Dec 6, 2023
f33eef9
in theory, aftering iterating over itemmap and checking each item's o…
captainsleepyhead Dec 6, 2023
8f1054a
Can go from one grid to another finally, added Hole tiles
MIHAILO8 Dec 6, 2023
063a186
reverted group 3's main
MIHAILO8 Dec 6, 2023
0916856
Commented out hole code for now because of issues
MIHAILO8 Dec 6, 2023
8e3e8d7
fix agent deserialization (kind of, maybe)
EthanRylko Dec 6, 2023
0e43d1f
bugfix - don't use IDs as indexes; don't use item IDs as CellType IDs
budnyric Dec 6, 2023
b7405ea
Merge branch 'main' into sister-location
ZaneMODell Dec 6, 2023
6e01e8d
more fixes; water
budnyric Dec 6, 2023
b502808
Fix more bad merges
budnyric Dec 6, 2023
940af2c
added doxyfile and third floor goal flag
hexactinal Dec 6, 2023
0c8752f
Fixed formatting of entity file
mdkdoc15 Dec 6, 2023
2a8b3aa
Added virtual to SetWorld fn
mdkdoc15 Dec 6, 2023
dc3b3c2
Clean up coding styling inconsistency. now aligned with agreed coding…
captainsleepyhead Dec 6, 2023
e0c52dd
Merge pull request #20 from mdkdoc15/update_entity
mdkdoc15 Dec 6, 2023
0fbcd41
Update Pickup Items test case. Added chest test case.
lablanck Dec 6, 2023
9b84210
formatted tracking agent
mdkdoc15 Dec 6, 2023
15d603c
Fixed files baes on comments
mdkdoc15 Dec 6, 2023
52951eb
Merge branch 'main' of https://github.com/mdkdoc15/group_1_cse_491
mdkdoc15 Dec 6, 2023
1428305
when new agents join, all agents are in proper positions
ZaneMODell Dec 6, 2023
1d3eae2
Removed unused files
mdkdoc15 Dec 6, 2023
2247dfc
returned girposition file to default
mdkdoc15 Dec 6, 2023
877898d
Testing client, moved waiting for action map back into clientinterface
EthanRylko Dec 6, 2023
ec6c732
Hole is working. Step on the '8' tile to fall into a randomly generat…
MIHAILO8 Dec 6, 2023
1484444
Working hole
MIHAILO8 Dec 6, 2023
e434c25
I don't even know anymore
EthanRylko Dec 6, 2023
25b0fef
Ocean biome work
poshypop Dec 6, 2023
1038fca
Merge remote-tracking branch 'origin/main'
poshypop Dec 6, 2023
efc63b2
Merge remote-tracking branch 'origin/main'
budnyric Dec 6, 2023
3e5b63f
Merge remote-tracking branch 'upstream/development'
Paul-Schulte Dec 6, 2023
a1b9d68
Fix build error
Paul-Schulte Dec 6, 2023
58f7d5e
Ocean biome work
poshypop Dec 6, 2023
8cd50af
Merge remote-tracking branch 'origin/main'
poshypop Dec 6, 2023
0ea5b3b
Add CreateGrid function and fix hole logic
Paul-Schulte Dec 6, 2023
69a835d
More agent serialization fixes
EthanRylko Dec 6, 2023
3100e8c
De Morgans Law
EthanRylko Dec 6, 2023
cad6ca4
potential fix for other clients joining
ZaneMODell Dec 6, 2023
0eea153
Changes for level 3
budnyric Dec 6, 2023
e495041
Clean up some warnings and unused members
budnyric Dec 6, 2023
c10138f
Fix assertion failure due to odd behavior of SetPosition with GridPos…
budnyric Dec 6, 2023
ae7dae3
Did Not Save
budnyric Dec 6, 2023
5720565
Guaranteed path from key to start, added agents back into map
MIHAILO8 Dec 6, 2023
1fde1ef
Created GPAnalyzer class
Rajmeet Dec 6, 2023
6e1b928
A* fintness function
amantham20 Dec 5, 2023
a6de9db
removed the duplicate export
amantham20 Dec 5, 2023
5cb366a
Merge branch 'Jason's-workspace' into GetTestWorking
amantham20 Dec 6, 2023
c1e1a68
runner class for gp
amantham20 Dec 6, 2023
663671f
Slight changes to the text showing in the textbox form Please enter t…
Dec 6, 2023
c97972c
Fixed handling of size_t and SFML packets.
mercere99 Dec 6, 2023
12388b7
Added HasInputConnections to CGPGenotype for testing; removed some un…
mercere99 Dec 6, 2023
db3e5d4
Fixed CGPGenotype::HasInputConnection()
mercere99 Dec 6, 2023
d1bd299
Shifted away from ranges functions that don't work on all compilers.
mercere99 Dec 6, 2023
8836799
Ocean biome finished
poshypop Dec 6, 2023
b60c250
Merge branch 'MSU-CSE491:development' into development
Scor23 Dec 6, 2023
2f4d77f
Added some agents and items, updated grid to be large grid.
carrgran Dec 6, 2023
316bda3
Merge remote-tracking branch 'matt/main' into mdkdoc15-main
FergusonAJ Dec 6, 2023
fcc1b9f
Merge branch 'mdkdoc15-main' into development
FergusonAJ Dec 6, 2023
c82cae8
Updated boat positioning.
carrgran Dec 6, 2023
3bf7cd1
Deleted classes Component and Container from Interface folder and alo…
Dec 6, 2023
c55686c
Updated agent positioning to fit large grid.
carrgran Dec 6, 2023
73f3b3d
Merge branch 'MSU-CSE491:development' into development
Scor23 Dec 6, 2023
5a2d05b
updated things
amantham20 Dec 6, 2023
688c14f
fixed test cases
hexactinal Dec 6, 2023
9fab640
Abracadabra! Warnings Vanish! 🎩🐇 Pulled a rabbit out of my hat and ma…
amantham20 Nov 28, 2023
9ceff97
Merge branch 'Jason's-workspace' into GPLoop-amanXSimon-CGPA
amantham20 Dec 5, 2023
c4eba95
runner class for gp
amantham20 Dec 6, 2023
8c7db31
Merge remote-tracking branch 'dominick/development' into json_fix
FergusonAJ Dec 6, 2023
5c64b78
Remove whole json library
FergusonAJ Dec 6, 2023
346ae45
Add json as submodule
FergusonAJ Dec 6, 2023
ac64597
Updated agent positioning to fit large grid.
carrgran Dec 6, 2023
3b1d35c
Merge branch 'main' into development
Scor23 Dec 6, 2023
06c0891
Add inventory for agents
Scor23 Dec 6, 2023
f2156cf
Merge branch 'development' of https://github.com/Ytesgn/cse_491_group…
Scor23 Dec 6, 2023
3c068d8
Get all changes back to normal I think
Scor23 Dec 6, 2023
52ba0f3
Fix grids
Scor23 Dec 6, 2023
bea4fe5
Merge branch 'development' into GPLoop-amanXSimon-CGPA
amantham20 Dec 6, 2023
97b5ac2
fixed all them errors
amantham20 Dec 6, 2023
8c0f279
Updated agent positioning.
carrgran Dec 6, 2023
4e1c13d
GPAnalyzer Created
Rajmeet Dec 6, 2023
22b38af
Merge branch 'GPAnalyzer' into GPLoop-amanXSimon-CGPA
amantham20 Dec 6, 2023
f6a7d5c
new cmake format for group 4 and 5
captainsleepyhead Dec 6, 2023
002a512
Revert "Merge branch 'development' of https://github.com/Ytesgn/cse_4…
carrgran Dec 6, 2023
03752b1
Fixing merge issues.
carrgran Dec 6, 2023
9aa80e7
Merge fix.
carrgran Dec 6, 2023
c564f50
Fix locale::facet::_S_create_c_locale name not valid
ssitu Dec 6, 2023
a1732f4
Remove random number generator from CGPGenotype
ssitu Dec 6, 2023
93518e2
Remove status
ssitu Dec 6, 2023
2fd4b57
Merge fix.
carrgran Dec 6, 2023
5b892bc
Updated DropItems()
carrgran Dec 6, 2023
34856e8
Updated RemoveItem/AddItem
carrgran Dec 6, 2023
86147e3
Merge fixes.
carrgran Dec 6, 2023
d7adf11
Fixed test cases after merge.
carrgran Dec 6, 2023
0cdb45c
Updated Main file slightly
Scor23 Dec 6, 2023
ba880c0
Merge branch 'main' of https://github.com/Ytesgn/cse_491_group_8_fork
Scor23 Dec 6, 2023
0df49d0
Merge remote-tracking branch 'upstream/development'
hexactinal Dec 7, 2023
4206e75
fix TrashInterface bracket
hexactinal Dec 7, 2023
f0a8db5
Fixed main file to work with interface
Scor23 Dec 7, 2023
39341de
Small fix to make the buttons work
Scor23 Dec 7, 2023
2713d53
Fixed weird agent ID desync hopefully
EthanRylko Dec 7, 2023
1c161ff
Fixed removal of items
Scor23 Dec 7, 2023
5a0fef2
Cleanup
EthanRylko Dec 7, 2023
fed046c
receiving finally on clientmanager update socket
ZaneMODell Dec 7, 2023
b41d90f
Added symbol property serialization so other players look like players
EthanRylko Dec 7, 2023
d5185c1
Too much stuff to say
Dec 7, 2023
45cd974
Fixed dying
Scor23 Dec 7, 2023
b41f3b7
Minor serialization change
EthanRylko Dec 7, 2023
e57a7ef
Too much stuff to write down
Dec 7, 2023
c4ea8ee
Merge remote-tracking branch 'upstream/development'
Paul-Schulte Dec 7, 2023
56f7fbe
Client updates (multiplayer works)
EthanRylko Dec 7, 2023
d3fdc23
more client updates
ZaneMODell Dec 7, 2023
ca4aecc
Server-side cleanup
EthanRylko Dec 7, 2023
d4e6123
fixed random generator
MIHAILO8 Dec 7, 2023
f677983
Merge branch 'main' of https://github.com/poshypop/GROUP6
MIHAILO8 Dec 7, 2023
76ac2c9
Core cleanup and documentation
EthanRylko Dec 7, 2023
2a25e69
Fixing client/server after merge
Chase-Lichtman Dec 7, 2023
a2da1e3
style changes
kaiserkrish Dec 7, 2023
39eaeaa
code standard server side updates
ZaneMODell Dec 7, 2023
a0981b5
client side small fixes/removing couts
ZaneMODell Dec 7, 2023
5b504c0
Merge branch 'main' of https://github.com/dradcl/cse_491_fall_2023_gr…
Dec 7, 2023
ce020e6
style changes
kaiserkrish Dec 7, 2023
48ecd0c
camelcase updates
ZaneMODell Dec 7, 2023
3358d65
Merge branch 'sister-location'
kaiserkrish Dec 7, 2023
f24eebb
Added comments and formatted GenerativeWorld
Dec 7, 2023
3b6f664
Merge branch 'main' of https://github.com/poshypop/GROUP6
Dec 7, 2023
0c830f1
Merge remote-tracking branch 'upstream/development'
kaiserkrish Dec 7, 2023
af13c6b
small cout removals and formatting
ZaneMODell Dec 7, 2023
3c4e603
Changed interface names around to load textures
EthanRylko Dec 7, 2023
28357ee
Merge branch 'main' of https://github.com/ZaneMODell/cse_491_fall_2023
EthanRylko Dec 7, 2023
36e5ba5
fixed code for seed generation unit test
MIHAILO8 Dec 7, 2023
a8aa187
Add more unit tests for GenerativeWorld
Paul-Schulte Dec 7, 2023
351dbc5
Merge remote-tracking branch 'origin/main'
Paul-Schulte Dec 7, 2023
d34b68a
Clean up code
Paul-Schulte Dec 7, 2023
370f344
Add start pos, add A* distance to start, switch fitness to average
ssitu Dec 7, 2023
fcf9a72
Code reuse for complexity and prevent graphs from blowing up in size
ssitu Dec 7, 2023
4462f08
one last merge
Dec 7, 2023
5051212
Merge pull request #1 from FergusonAJ/json_fix
dradcl Dec 7, 2023
cfda5a8
Resolved merge conflict with group_5_server_main.cmake
captainsleepyhead Dec 7, 2023
847609b
new cmake format for group 4 and 5
captainsleepyhead Dec 7, 2023
6b6d669
Temporarily remove logging #define
FergusonAJ Dec 7, 2023
67246e4
Change the notify for move set action
Scor23 Dec 7, 2023
fec9e6d
fixed last texture
Scor23 Dec 7, 2023
be27690
Added AStar Agent.
carrgran Dec 7, 2023
156b635
Fix asset dir in scripts
FergusonAJ Dec 7, 2023
273e12b
Ignore items outside the grid
FergusonAJ Dec 7, 2023
757db0a
Add support for 2D interface, relying on ifdef
FergusonAJ Dec 7, 2023
1beb79e
Formatting changes.
carrgran Dec 7, 2023
1047cb0
Tweak addAgent name to appease 2D interface
FergusonAJ Dec 7, 2023
52cead2
Change name in the script instead of hardcoding
FergusonAJ Dec 7, 2023
969ea4d
Added in-class examples.
mercere99 Dec 7, 2023
6ae6d7d
Merge branch 'development' of https://github.com/MSU-CSE491/cse_491_f…
mercere99 Dec 7, 2023
3faa1c4
Small healing fix
Scor23 Dec 7, 2023
61aee22
Update ServerInterface.hpp
mercere99 Dec 7, 2023
7a413cd
Merge remote-tracking branch 'group_2/development' into development
FergusonAJ Dec 7, 2023
4e30d72
Merge remote-tracking branch 'group_8/main' into development
FergusonAJ Dec 7, 2023
2ac181f
Ignore .json files from data collection output
FergusonAJ Dec 7, 2023
33ed601
Merge remote-tracking branch 'group_7/GPLoop-amanXSimon-CGPA' into de…
FergusonAJ Dec 8, 2023
c587a44
Merge remote-tracking branch 'group_5/main' into development
FergusonAJ Dec 8, 2023
9d550c2
Zoom in ManualWorld in networked games
FergusonAJ Dec 8, 2023
ffe3252
Merge remote-tracking branch 'group_6/main' into development
FergusonAJ Dec 8, 2023
d673e16
Merge remote-tracking branch 'group_3/main' into interface_merge
FergusonAJ Dec 8, 2023
84113b9
Merge pull request #4 from FergusonAJ/interface_merge
Gaya1858 Dec 8, 2023
5592631
fix cmake
captainsleepyhead Dec 8, 2023
be09165
I have just changed the functionality for the Largergrid Group8 to dr…
Dec 8, 2023
a614d15
Merge branch 'development' of https://github.com/MSU-CSE491/cse_491_f…
mercere99 Dec 9, 2023
280d7b2
updated our interface to have inventory capacity to display items ins…
captainsleepyhead Dec 9, 2023
f915cd8
Merge remote-tracking branch 'origin/main'
captainsleepyhead Dec 9, 2023
95c0408
inventory works since group4 is a lost cause in terms of maininterfac…
captainsleepyhead Dec 9, 2023
fce2756
Revert "inventory works since group4 is a lost cause in terms of main…
captainsleepyhead Dec 9, 2023
f9adebe
inventory works since group4 is a lost cause in terms of maininterfac…
captainsleepyhead Dec 9, 2023
e84fa38
our main has copied group6 main's functions and runs their version of…
captainsleepyhead Dec 9, 2023
7281711
Some type fixes for packets and removed problematic ranges code.
mercere99 Dec 10, 2023
a9fc7f7
Cleaned up some unused variable warnings.
mercere99 Dec 10, 2023
7cac504
Cleanup of warnings (unused variables and comparison type mismatches)
mercere99 Dec 10, 2023
73c67c5
Ran all of core through clang-format
mercere99 Dec 10, 2023
4c3f0a5
Added a .clang-format for the project
mercere99 Dec 10, 2023
866efd3
Setup access mods (private, public, protects) to line up with 'class'.
mercere99 Dec 10, 2023
69b3cf1
Moved grid_id to entity; cleaned up property type; updated formatting.
mercere99 Dec 10, 2023
f1ea854
Cleaned up CoreObject; bumped to ALPHA status.
mercere99 Dec 10, 2023
36a54ad
Fixed spelling of GetPropertyMap in ManualWorld.
mercere99 Dec 10, 2023
bce64b5
In GridPosition, change AsString to ToString and added FromString for…
mercere99 Dec 10, 2023
f580549
Added unit tests for GridPosition.
mercere99 Dec 10, 2023
0b1c74e
Added a wide range of serialization helper functions to CoreObject.
mercere99 Dec 10, 2023
bc22538
Added GridPosition base class CoreObject, serialization, Invalid crea…
mercere99 Dec 10, 2023
21255cb
Added explicity converters for Properties and Serialization in Entity.
mercere99 Dec 10, 2023
ed65648
Updated serialization for AgentBase and ItemBase
mercere99 Dec 10, 2023
359f143
Made serialization helpers static functions; fixed some issues
mercere99 Dec 11, 2023
5502860
Minor comment fixes.
mercere99 Dec 11, 2023
a399bd0
Moved Property into its own file.
mercere99 Dec 11, 2023
89ac0cf
Move Serialize helper functions into their own file.
mercere99 Dec 11, 2023
13efe59
Set all core files to be ALPHA instead of PROPOSAL.
mercere99 Dec 11, 2023
9114750
Merge remote-tracking branch 'group_3/main' into development
FergusonAJ Dec 11, 2023
7d82565
Simplified serialize of Entity position.
mercere99 Dec 11, 2023
594cd3b
Merged in changes in Development and made new fixes.
mercere99 Dec 12, 2023
e5beb64
Renamed variables to be more fitting. fixed bugs and logic in the tex…
captainsleepyhead Dec 12, 2023
b4a66c2
Added serialize tests.
mercere99 Dec 12, 2023
98da5f6
Merge branch 'development' into main
captainsleepyhead Dec 12, 2023
0f5187f
Setup Serialize function to give better errors.
mercere99 Dec 12, 2023
133b735
Switched WorldGrid to use new serialize functions.
mercere99 Dec 12, 2023
8914026
Added Entity::GetNumProperties() and improved errors.
mercere99 Dec 12, 2023
a755f0b
Clean up WorldBase to work with new serialize and networking.
mercere99 Dec 12, 2023
620e3b6
Minor cleanup
mercere99 Dec 12, 2023
981d226
Fix networking after serialization changes
FergusonAJ Dec 13, 2023
d2f42cb
Merge remote-tracking branch 'group_3/main' into development
FergusonAJ Dec 13, 2023
853997a
Revert ranges copy to help with compatibility
FergusonAJ Dec 13, 2023
07a564f
Merge pull request #45 from amantham20/Aman's-blogpost
FergusonAJ Dec 13, 2023
c937f4b
Merge remote-tracking branch 'aman/Rajmeet's-blogpost' into blogs
FergusonAJ Dec 13, 2023
90bf8e2
Merge branch 'blogs' of github.com:MSU-CSE491/cse_491_fall_2023 into …
FergusonAJ Dec 13, 2023
1075e84
Merge branch 'ODell_blogpost' into blogs
FergusonAJ Dec 13, 2023
bdb31f7
Merge remote-tracking branch 'origin/Radcliffe_blogpost' into blogs
FergusonAJ Dec 13, 2023
5e5a12b
Merge pull request #49 from MSU-CSE491/Newaz_blogpost
FergusonAJ Dec 13, 2023
09ff355
Merge pull request #50 from MSU-CSE491/Felici_blogpost
FergusonAJ Dec 13, 2023
c0f641d
Merge pull request #51 from MSU-CSE491/Carr_blogpost
FergusonAJ Dec 13, 2023
37a6dfa
Merge pull request #52 from MSU-CSE491/Gu_blogpost
FergusonAJ Dec 13, 2023
f0cb030
Merge pull request #54 from MSU-CSE491/Rylko_blogpost
FergusonAJ Dec 13, 2023
dab53a8
Merge pull request #55 from MSU-CSE491/VanDam_blogpost
FergusonAJ Dec 13, 2023
315eda6
Merge pull request #56 from MSU-CSE491/kight_blogpost
FergusonAJ Dec 13, 2023
5e67d66
Merge pull request #58 from MSU-CSE491/Situ_blogpost
FergusonAJ Dec 13, 2023
45331f9
Merge pull request #61 from MSU-CSE491/Garvey_blogpost
FergusonAJ Dec 13, 2023
6b22525
Merge pull request #62 from MSU-CSE491/Seguin_blogpost
FergusonAJ Dec 13, 2023
e197db3
Merge pull request #63 from MSU-CSE491/Orvis_blogpost
FergusonAJ Dec 13, 2023
b4961ae
Merge pull request #64 from MSU-CSE491/murrani_blogpost
FergusonAJ Dec 13, 2023
8071835
Merge remote-tracking branch 'origin/Lichtman_blogpost' into blogs
FergusonAJ Dec 13, 2023
5a24e7a
Rename Chase's blogpost source directory
FergusonAJ Dec 13, 2023
418532c
Merge remote-tracking branch 'origin/Magal_blogpost' into blogs
FergusonAJ Dec 13, 2023
2fd9648
Clean up Krish's blogpost directory
FergusonAJ Dec 13, 2023
c4452b0
Merge pull request #67 from MSU-CSE491/Kanphade_blogpost
FergusonAJ Dec 13, 2023
64ad08b
Merge pull request #68 from MSU-CSE491/budny-blogpost
FergusonAJ Dec 13, 2023
8a3f393
Merge remote-tracking branch 'origin/ravipati_blogpost' into blogs
FergusonAJ Dec 13, 2023
cbf88e5
Move note from README to its own file
FergusonAJ Dec 13, 2023
1d57dad
Merge pull request #70 from MSU-CSE491/Lablanc_blogpost
FergusonAJ Dec 13, 2023
c500dea
Merge remote-tracking branch 'origin/Villalpando_blogpost' into blogs
FergusonAJ Dec 13, 2023
26b23de
Remove empty file
FergusonAJ Dec 13, 2023
5846dd9
Merge pull request #72 from MSU-CSE491/Mihailovic_blogpost
FergusonAJ Dec 13, 2023
9edc8e8
Merge remote-tracking branch 'dom/Du_blogpost' into blogs
FergusonAJ Dec 13, 2023
e016804
Merge pull request #74 from MSU-CSE491/david_rackerby_blogpost
FergusonAJ Dec 13, 2023
90e41cc
Merge pull request #75 from MSU-CSE491/Meehan_blogpost
FergusonAJ Dec 13, 2023
a4e22dd
Merge remote-tracking branch 'origin/Mui-BlogPost' into blogs
FergusonAJ Dec 13, 2023
e58c3c0
Merge pull request #77 from MSU-CSE491/Schulte_blogpost
FergusonAJ Dec 13, 2023
eede5f7
Merge remote-tracking branch 'origin/Yones_blogpost' into blogs
FergusonAJ Dec 13, 2023
c803a77
Merge branch 'yones_blogpost' into blogs
FergusonAJ Dec 13, 2023
069400e
Organize blogposts to be consistent
FergusonAJ Dec 13, 2023
8c5a0db
Capitalize last name
FergusonAJ Dec 13, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 4 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
BasedOnStyle: google
ColumnLimit: 100
AccessModifierOffset: -2

8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,11 @@ cmake-build-*/

#mac
.DS_Store

#savedata/ #issues with xml save location

savedata/GPAgent/*.xml
#AgentData_*.xml


site
12 changes: 12 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,15 @@
[submodule "third_party/SFML"]
path = third_party/SFML
url = https://github.com/SFML/SFML.git
[submodule "third_party/PEGTL"]
path = third_party/PEGTL
url = https://github.com/taocpp/PEGTL
[submodule "third_party/json"]
path = third_party/json
url = https://github.com/nlohmann/json.git
[submodule "third_party/tinyxml2"]
path = third_party/tinyxml2
url = https://github.com/leethomason/tinyxml2.git
[submodule "third_party/json"]
path = third_party/json
url = https://github.com/nlohmann/json.git
220 changes: 163 additions & 57 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,91 +6,197 @@ project(CSE_491)
# For now, default to building both the main app and tests
set(BUILD_MAIN 1)
set(BUILD_TESTS 1)
if("${CMAKE_BUILD_TYPE}" STREQUAL "Test")
set(BUILD_MAIN 0)
set(BUILD_TESTS 1)
endif()
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Test")
set(BUILD_MAIN 0)
set(BUILD_TESTS 1)
endif ()

# Create a function to make .cmake files simpler
function(add_source_to_target TARGET_NAME SOURCE_PATH)
message(STATUS "Loading source: ${SOURCE_PATH}")
target_sources(${TARGET_NAME}
PRIVATE ${CMAKE_SOURCE_DIR}/${SOURCE_PATH}
message(STATUS "Loading source: ${SOURCE_PATH}")
target_sources(${TARGET_NAME}
PRIVATE ${CMAKE_SOURCE_DIR}/${SOURCE_PATH}
)
endfunction()

# Set the necessary C++ flags, some of which are configuration-specific
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_FLAGS "-Wall -Wextra -Wcast-align -Winfinite-recursion -Wnon-virtual-dtor -Wnull-dereference -Woverloaded-virtual -pedantic")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wcast-align -Winfinite-recursion -Wnon-virtual-dtor -Wnull-dereference -Woverloaded-virtual -pedantic")
set(CMAKE_CXX_FLAGS_DEBUG "-g")
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG")
set(CMAKE_CXX_FLAGS_MINSIZEREL "-DNDEBUG")
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")

set(CMAKE_CXX_FLAGS_COVERAGE "-O2 -g -fcoverage-mapping -fprofile-instr-generate -fprofile-arcs")

# Place all executables in the executable directory
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/executable)

# Move assets to build directory
file(COPY ./assets DESTINATION ${CMAKE_CURRENT_BINARY_DIR})

# Build the main application executables, if requested
if(${BUILD_MAIN})

#option(BUILD_CLANG_LLVM "Build with clang for LLVM" OFF)
option(SANITIZE_MEMORY "Build with sanitizers for GP" OFF)
if (SANITIZE_MEMORY)

set(BUILD_MAIN 0)
set(BUILD_TESTS 0)

set(CMAKE_CXX_COMPILER "/opt/homebrew/opt/llvm/bin/clang++")

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=memory")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=memory")

set(XML_SRC_DIR third_party/tinyxml2)
set(XML_BUILD_DIR xml_build)
add_subdirectory(${XML_SRC_DIR} ${XML_BUILD_DIR})

#added the executable
add_executable(gp_train_main source/gp_train_main.cpp)

#linking the targets
target_sources(gp_train_main PRIVATE source/core/Entity.cpp)
target_include_directories(gp_train_main
PRIVATE ${CMAKE_SOURCE_DIR}/source/core
${CMAKE_SOURCE_DIR}/source/Agents
)
target_link_libraries(gp_train_main
PRIVATE tinyxml2
PRIVATE pthread
)


endif ()





# Build the gp_train_main executable, if requested without SFML and Catch2
option(BUILD_GP_ONLY "Build only gp_main.cpp" OFF)
if (BUILD_GP_ONLY)
set(BUILD_MAIN 0)
set(BUILD_TESTS 0)

set(XML_SRC_DIR third_party/tinyxml2)
set(XML_BUILD_DIR xml_build)
add_subdirectory(${XML_SRC_DIR} ${XML_BUILD_DIR})

# List of executables
set(EXECUTABLES gp_train_main gp_selective_runner_main gp_train_cgp_main gp_train_lgp_main)

# Common source files and include directories
set(COMMON_SOURCES source/core/Entity.cpp)
set(COMMON_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/source/core ${CMAKE_SOURCE_DIR}/source/Agents)

# Common libraries to link with
set(COMMON_LIBRARIES tinyxml2 pthread)

# Loop to configure each executable
foreach(EXECUTABLE IN LISTS EXECUTABLES)
add_executable(${EXECUTABLE} source/${EXECUTABLE}.cpp)
target_sources(${EXECUTABLE} PRIVATE ${COMMON_SOURCES})
target_include_directories(${EXECUTABLE} PRIVATE ${COMMON_INCLUDE_DIRS})
target_link_libraries(${EXECUTABLE} PRIVATE ${COMMON_LIBRARIES})
endforeach()

endif ()

# Typically you don't care so much for a third party library's tests to be
# run from your own project's code.
set(JSON_BuildTests OFF CACHE INTERNAL "")
# Configure json
set(JSON_SRC_DIR third_party/json)
set(JSON_BUILD_DIR json_build)
add_subdirectory(${JSON_SRC_DIR} ${JSON_BUILD_DIR})

# Build the test executables, if requested
if (${BUILD_TESTS})

# Configure Catch
set(CATCH_SRC_DIR third_party/Catch2)
set(CATCH_BUILD_DIR catch_build)
add_subdirectory(${CATCH_SRC_DIR} ${CATCH_BUILD_DIR})


# Configure only the networking portion of SFML
if (NOT ${BUILD_MAIN})
set(SFML_BUILD_WINDOW FALSE)
set(SFML_BUILD_GRAPHICS FALSE)
set(SFML_BUILD_AUDIO FALSE)
set(SFML_SRC_DIR third_party/SFML)
set(SFML_BUILD_DIR sfml_build)
add_subdirectory(${SFML_SRC_DIR} ${SFML_BUILD_DIR})

set(XML_SRC_DIR third_party/tinyxml2)
set(XML_BUILD_DIR xml_build)
add_subdirectory(${XML_SRC_DIR} ${XML_BUILD_DIR})


endif ()


# Setup CTest
include(CTest)
enable_testing()

# Tunnel into test directory CMake infrastructure
add_subdirectory(tests)
endif ()

if (${BUILD_MAIN})
# line to set santizers
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=[sanitizer]")
# can be set to address, undefined, thread, memory, or leak

# Enable the SFML interface (graphics unavailable for tests on GitHub)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DUSE_SFML_INTERFACE")

# Configure all of SFML
set(SFML_SRC_DIR third_party/SFML)
set(SFML_BUILD_DIR sfml_build)
add_subdirectory(${SFML_SRC_DIR} ${SFML_BUILD_DIR})

# Configure PEGTL
set(PEGTL_INCLUDE_DIR third_party/PEGTL/include)

#configure the xml library
set(XML_SRC_DIR third_party/tinyxml2)
set(XML_BUILD_DIR xml_build)
add_subdirectory(${XML_SRC_DIR} ${XML_BUILD_DIR})


# Find all the main files for the various applications
# Currently this means any *.cpp file in the root of source
file(GLOB EXE_SOURCES CONFIGURE_DEPENDS RELATIVE ${CMAKE_SOURCE_DIR}/source source/*.cpp)
message(STATUS "List of main files to build: ${EXE_SOURCES}")

# Loop through each executable and build it!
foreach(EXE_SOURCE ${EXE_SOURCES})
# Rip the .cpp off the end of the string
string(REPLACE ".cpp" "" EXE_NAME ${EXE_SOURCE})
# Create list of source files (currently just the one .cpp file)
# Create executable and link to includes / libraries
add_executable(${EXE_NAME} ${CMAKE_SOURCE_DIR}/source/${EXE_SOURCE})
target_include_directories(${EXE_NAME}
PRIVATE ${CMAKE_SOURCE_DIR}/source
)
target_link_libraries(${EXE_NAME}
PRIVATE sfml-window sfml-audio sfml-graphics sfml-system sfml-network
)
if(EXISTS ${CMAKE_SOURCE_DIR}/source/${EXE_NAME}.cmake)
message(STATUS "Loading ${EXE_NAME}.cmake")
include(${CMAKE_SOURCE_DIR}/source/${EXE_NAME}.cmake)
else()
message(WARNING "Cannot find ${EXE_NAME}.cmake")
endif()
endforeach()
endif()

# Build the test executables, if requested
if(${BUILD_TESTS})

# Configure Catch
set(CATCH_SRC_DIR third_party/Catch2)
set(CATCH_BUILD_DIR catch_build)
add_subdirectory(${CATCH_SRC_DIR} ${CATCH_BUILD_DIR})

# Configure only the networking portion of SFML
if(NOT ${BUILD_MAIN})
set(SFML_BUILD_WINDOW FALSE)
set(SFML_BUILD_GRAPHICS FALSE)
set(SFML_BUILD_AUDIO FALSE)
set(SFML_SRC_DIR third_party/SFML)
set(SFML_BUILD_DIR sfml_build)
add_subdirectory(${SFML_SRC_DIR} ${SFML_BUILD_DIR})
endif()

# Setup CTest
include(CTest)
enable_testing()

# Tunnel into test directory CMake infrastructure
add_subdirectory(tests)
endif()

# Loop through each executable and build it!
foreach (EXE_SOURCE ${EXE_SOURCES})
# Rip the .cpp off the end of the string
string(REPLACE ".cpp" "" EXE_NAME ${EXE_SOURCE})
# Create list of source files (currently just the one .cpp file)
# Create executable and link to includes / libraries
add_executable(${EXE_NAME} ${CMAKE_SOURCE_DIR}/source/${EXE_SOURCE} ${CMAKE_SOURCE_DIR}/source/core/Entity.cpp)
target_include_directories(${EXE_NAME}
PRIVATE ${CMAKE_SOURCE_DIR}/source ${PEGTL_INCLUDE_DIR}
)
target_link_libraries(${EXE_NAME}
PRIVATE sfml-window sfml-audio sfml-graphics sfml-system sfml-network
nlohmann_json::nlohmann_json
)

target_link_libraries(${EXE_NAME}
PRIVATE tinyxml2
)

if (EXISTS ${CMAKE_SOURCE_DIR}/source/${EXE_NAME}.cmake)
message(STATUS "Loading ${EXE_NAME}.cmake")
include(${CMAKE_SOURCE_DIR}/source/${EXE_NAME}.cmake)
else ()
message(WARNING "Cannot find ${EXE_NAME}.cmake")
endif ()
endforeach ()
endif ()
29 changes: 29 additions & 0 deletions assets/grids/default_maze2.grid
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# # # #
# ### # ########## # ########## # ######### #
# # # # # # # # # # # #
# # ### ## # ### # ############ ##### ### # #
# # # # # # # # # # #
# ##### # # # ### # ###### ###### ##### ### #
# # # # # # # # # # #
##### # ###### # ###### # ## # ###### ####### # ## #
# # # # ## # # # #
# ############## ##### # # # ###### # ######### #
# # # # # # # # # #
############### # ### ###### # # #### # # ##### # #
# # # # # # # # # # #
# ############### ##### # # ######## ##### # # #
# # # # # # # #
# #################### ########### # ######### #
# # # # #
# # # ################### ############# ########## #
# # # # #
# ################ ############### ####### #
# # # # # # #
# # # # # ##################################### # #
# # # # # # # # #
# # # # # # ################################### # #
# # # # # # # #
# # ################################ # #
# # # # # # # # # #
# # # # # # # ############################### # #
# # # # # # # # # #
9 changes: 9 additions & 0 deletions assets/grids/empty_maze.grid
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
*
*
*
*
*
*
*
*
*
4 changes: 2 additions & 2 deletions assets/grids/group4_maze.grid
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# g## #
# # ###### ##
w# g## #
u# # ###### ##
# # # # # #
# # # # # # #
# # #
Expand Down
9 changes: 9 additions & 0 deletions assets/grids/lang_load_test.grid
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# ## #
# # ###### ##
# # # # # #
# # # # # # #
# # #
1#####3########### #
##
wwwwwwwwwwww#########

44 changes: 44 additions & 0 deletions assets/grids/second_floor.grid
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@

# # # ######### ### ####### ### # # #
###### # # # ##### # # # # # # # # #
###### ## # # ## ###### #
######## g# ## # # ### # # # # ## # #
######### ## # ## # # # # # #
# # # ## ##### # ## ## # #
####### # ### ## ## ## ## # ### # ## ## #
####### # ### ## # ## ## # # ###
####### # # # ## # # ### # # # ## ###
## ## # ## # ## # #### # # #
# ### # # ## # # # ## # # ## # ## ##
##### # ## ## # # # # ## # ## # ##
#### ############################# ##############
### ### ### # # # ## ## ## # # # # # # ##
## ##### # ## ## # # ## # ### # # # #
# ## ## ### # ## ## #### ### # ## #####
######## # # ## # # ## # ###### #
# # ## # # # # ## # # ## # ##
# # ## # ### ## # # # ##### ## # #
# # # # #### ## # ### # # ## # # #
# #### ### ## # ## # #### # # ### ##
# ##### ### ## # ## # ## ### # # ##
# ##### # ### ## ### # # #
#### ### ## # ### ## # # # ## #
# # # # # # ## ### # # # ### ##
# ### # # ## ## # ## # # # ###
## # # ### # ## # ## ## # # #### #
# ### ## # ## # # # # # # ## ##
## # ## ## #### ## # ## # # ## #
## # # #### # # # # # ## # ##### # #
# # # ### ### # ## ## # ## ### #
## # # # ### ## # # # ## ## # #
# # # # ### ## # ## # # # #
# # # # ## ## ## ##### ###### # # # ###
# ## ####### # ###### ## # # # ## # #
## ##### # # ## ##### # # ## ## # #
# ### # #### # ## # ## # # # ### # #
# # # # # ## ## # # # # ## # #
# ## # ### # # ### # # ## ## # #### # #
# # # ### # # # ## # # # # ### ##
# # ## ### # # ##### ## # # #### # #
# #### ## # ## # ##### # # ## # # ##

Loading